我是JSON的新手,所以提前为这个愚蠢的问题道歉。
我想用value字段中的变量编写JSON。它看起来像这样:
def print_json(user_name):
opened_json = open('way/to/json/file')
tmp = json.load(opened_json)
res = tmp(['path_to_folder'](user_name))
print(res)
def main(user_name):
print_json(user_name)
main('user')
字符串
JSON:
{"path_to_folder": "/Users/" + user_name + "/my_folder/"}
型
等待输出:
/Users/user/my_folder/
型
请告诉我是否有解决方案。
提前感谢!
编辑:我的问题,我不能正确添加变量到JSON。它标记为红色。错误的语法,当我尝试concat。
1条答案
按热度按时间fruv7luv1#
你想要的东西在JSON中是不可能直接实现的,因为它不支持“模板化”。
一种解决方案是使用模板语言(如Jinja)来编写JSON模板,然后在没有
json
库的情况下加载此文件,并使用Jinja填充值,最后使用json.loads
从渲染的字符串加载字典。你的json文件可能看起来像这样:
字符串
你的Python代码:
型
事实上,如果这是一个简单的一次性的事情,使用Python的内置模板可能会更好。我建议在JSON的情况下使用老式的格式,因为否则你将不得不转义很多大括号:
JSON文件:
型
“渲染”:
型