繁体   English   中英

如何使用JSON编码全局Python变量?

[英]How do I encode a global Python variable with JSON?

我试图弄清楚如何将全局变量编码为JSON格式,我什至不确定是否可行。 我正在使用Python 2.7.8,并且已经尝试了几种不同的方法:

# Variables
value = "String" # String
value2 = 0 # Integer
value3 = True # Boolean

json.dumps({"key": value, "key2": value2, "key3": value3}, sort_keys=True, indent=4, separators=(',', ': '))

我也尝试过先将其设置为字符串(使用或不使用大括号,在字符串值上使用/不使用引号等)

json_raw = '{"key": %s, "key2": %d, "key3": %s}' % (value, value2, value3)
json.dumps(json_raw, sort_keys=True, indent=4, separators=(',', ': '))

但是,通过这些尝试中的每一项,我都会收到错误消息:

AttributeError: 'str' object has no attribute 'dumps'

有任何想法吗?

让我用代码回答:

value = "String" # String
value2 = 0 # Integer
value3 = True # Boolean
json_map = {}
json_map["Some string"] = value
json_map["Some int"] = value2
json_map["Some bool"] = value3
result = json.dumps(json_map)

然后结果包含'{"Some int": 0, "Some string": "String", "Some bool": true}' 这一切都归功于python字典json.dumps的神奇魅力

这绝对是可行的。 阅读代码,您正在使用json.dump函数。 dump希望第二个参数是类似文件的对象。 dumps函数注意s ,但不注意,并以字符串形式返回数据的JSON表示形式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM