如何读取文本文件并将指定数据存入Python字典?
从文本文件提取数据构建Python字典
需求说明
读取名为mytext.txt的文本文件,将每行中的日期时间字符串作为字典的键,该行对应的第一个小数数值(如1.85)作为字典的值,得到目标格式的Python字典。
源文件内容
BBM 17/12/2023 15:15:04 1.85 2700.0 41857.9 BBM 17/12/2023 16:00:02 1.68 2698.0 41992.8 BBM 17/12/2023 16:45:04 1.6 2702.0 41908.3 BBM 17/12/2023 17:30:10 1.47 2706.0 41975.1 BBM 17/12/2023 18:15:02 1.35 2692.0 41934.5
目标字典格式
myDict = { '17/12/2023 15:15:04': 1.85, '17/12/2023 16:00:02': 1.68, '17/12/2023 16:45:04': 1.6, '17/12/2023 17:30:10': 1.47, '17/12/2023 18:15:02': 1.35 }
实现代码
以下是简洁的实现方式,逐行读取文件并提取所需数据:
myDict = {} # 打开文件并逐行处理 with open('mytext.txt', 'r') as file: for line in file: # 去除行首尾空白字符,按空格分割成列表 parts = line.strip().split() # 拼接日期和时间作为键,提取第4个元素转为浮点数作为值 key = f"{parts[1]} {parts[2]}" value = float(parts[3]) myDict[key] = value # 验证结果 print(myDict)
代码说明
- 用
with open(...)语句安全读取文件,无需手动关闭文件。 line.strip()去除每行首尾的空白(包括换行符),split()默认按任意数量空格分割字符串,避免多余空格影响分割结果。- 每行分割后,
parts[1]是日期,parts[2]是时间,拼接后作为字典的键;parts[3]是目标小数,转为float类型后作为对应的值。
内容的提问来源于stack exchange,提问作者Chaminda Kumara
相关产品推荐
相关产品推荐

