如何将pipenv的Pipfile.lock内容转为Python字典?
关于Pipfile.lock转Python字典的解决方案
现成模块直接解析
Pipfile.lock本质是JSON格式文件,完全不需要手动替换true/false,直接用Python标准库的json模块就能解析成嵌套字典:
import json with open('Pipfile.lock', 'r', encoding='utf-8') as f: lock_dict = json.load(f)
执行后直接得到Python原生的嵌套字典,JSON中的true/false/null会自动转换为Python的True/False/None。
处理已替换后的字符串
如果已经生成了替换true为True的字符串parsed_content,可以用ast.literal_eval()安全解析,它比eval()更可靠,不会执行恶意代码:
import ast lock_dict = ast.literal_eval(parsed_content)
该函数能识别Python字面量语法,完美处理嵌套字典、列表等复杂结构。
内容的提问来源于stack exchange,提问作者Sun Bear
相关产品推荐
相关产品推荐

