Python 2.7如何读取含字典的文件并修改Apples值(从14改至13)
在Python 2.7中读取JSON字典文件并修改值
没问题,我来一步步帮你搞定这个需求。你的文件内容是标准的JSON格式,Python 2.7自带的json模块就能轻松处理,不用额外安装依赖包。
步骤1:读取文件并解析为字典
假设你的文件名为fruit_counts.json,我们用with语句打开文件(它会自动帮你关闭文件,避免资源泄漏),再通过json.load()把文件内容解析成Python字典:
import json # 打开文件并解析为字典 with open('fruit_counts.json', 'r') as f: fruit_dict = json.load(f) # 验证结果(可选) print(fruit_dict) # 输出:{'Apples': 14, 'Bananas': 14, 'Pineapples': 0, 'Pears': 8}
步骤2:修改字典中的值
拿到字典后,修改值就和操作普通Python字典一样简单。比如把"Apples"的值从14降到13:
# 直接赋值修改 fruit_dict['Apples'] = 13 # 或者如果是要递减数值,也可以这么写(更通用) # fruit_dict['Apples'] -= 1 # 验证修改结果 print(fruit_dict['Apples']) # 输出:13
步骤3:(可选)将修改后的字典写回文件
如果需要把修改后的结果保存回原文件(或者新文件),用json.dump()即可:
with open('fruit_counts.json', 'w') as f: # indent=4 让输出的JSON格式更美观,方便阅读 json.dump(fruit_dict, f, indent=4)
额外提示:处理非标准JSON格式的情况
如果你的文件内容用的是单引号(比如{'Apples':14,...}),这种不是严格的JSON格式,json.load()会报错。这时候可以用ast.literal_eval()来解析,它比eval()更安全,不会执行恶意代码:
import ast with open('fruit_counts.json', 'r') as f: file_content = f.read() fruit_dict = ast.literal_eval(file_content)
内容的提问来源于stack exchange,提问作者dylan gornall
相关产品推荐
相关产品推荐

