
本文介绍如何使用Python解析特定格式的字符串数据,该数据包含以"55=id|1007=symbol"模式重复出现的键值对。我们将使用正则表达式提取id和symbol,并最终生成一个以symbol为键,id为值的字典,方便后续使用这些数据创建订单或其他操作。
假设我们有如下格式的字符串数据:
55=22395|1007=BTCUSD|1008=3|55=22396|1007=BTCEUR|1008=2|55=22397|1007=ETHUSD|1008=3|55=22398|1007=ETHEUR|1008=3|55=20009|1007=TELENET GROUP|1008=2|55=20011|1007=MAGNEGAS CORP|1008=2|55=20012|1007=CALUMET SPEC PRDCTS|1008=2|55=20013|1007=CBOE HLDG INC|1008=2|55=20014|1007=ELECTRONIC ARTS INC|1008=2|55=20015|1007=EXPRESS SCRIPTS INC|1008=2|55=20016|1007=ADVANCE AUTO PARTS|1008=2|55=20017|1007=CHINA FUND INC|
我们的目标是提取出 "55" 对应的值 (id) 和 "1007" 对应的值 (symbol),并将它们关联起来。可以使用Python的re模块(正则表达式)来实现这个目标。
import re
s = """55=22395|1007=BTCUSD|1008=3|55=22396|1007=BTCEUR|1008=2|55=22397|1007=ETHUSD|1008=3|55=22398|1007=ETHEUR|1008=3|55=20009|1007=TELENET GROUP|1008=2|55=20011|1007=MAGNEGAS CORP|1008=2|55=20012|1007=CALUMET SPEC PRDCTS|1008=2|55=20013|1007=CBOE HLDG INC|1008=2|55=20014|1007=ELECTRONIC ARTS INC|1008=2|55=20015|1007=EXPRESS SCRIPTS INC|1008=2|55=20016|1007=ADVANCE AUTO PARTS|1008=2|55=20017|1007=CHINA FUND INC|"""
data = {}
for id_, symbol in re.findall(r"\b55=(\d+)\|\d+=([^|]+)", s):
data[symbol] = id_
print(data)
# 输出:
# {'BTCUSD': '22395', 'BTCEUR': '22396', 'ETHUSD': '22397', 'ETHEUR': '22398', 'TELENET GROUP': '20009', 'MAGNEGAS CORP': '20011', 'CALUMET SPEC PRDCTS': '20012', 'CBOE HLDG INC': '20013', 'ELECTRONIC ARTS INC': '20014', 'EXPRESS SCRIPTS INC': '20015', 'ADVANCE AUTO PARTS': '20016', 'CHINA FUND INC': '20017'}代码解释:
立即学习“Python免费学习笔记(深入)”;
注意事项:
总结:
通过使用正则表达式,我们可以有效地从特定格式的字符串中提取所需的信息,并将其组织成易于使用的数据结构(例如字典)。 这在处理来自API或其他数据源的文本数据时非常有用。
以上就是使用Python解析字符串数据并生成键值对映射的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号