Python json字符串篡改
我有一个JSON序列化值的python字典 我想添加到这些序列化字符串中,而不必先执行Python json字符串篡改,python,json,serialization,Python,Json,Serialization,我有一个JSON序列化值的python字典 我想添加到这些序列化字符串中,而不必先执行加载(…),然后再执行转储(…)——因此我“摆弄”序列化值: 目前我有: for key, value in my_dict.items(): # creating JSON of additional data I want in the JSON string extra = dumps({ 'key1': 3, 'key2': 1 }, default=str) # cuttin
加载(…)
,然后再执行转储(…)
——因此我“摆弄”序列化值:
目前我有:
for key, value in my_dict.items():
# creating JSON of additional data I want in the JSON string
extra = dumps({ 'key1': 3, 'key2': 1 }, default=str)
# cutting the last '}' from the end off 'value', the '{' and '}' from the
# start and end of 'extra', and then concatting them together.
my_dict[key] = '%s,%s' % (value[:-1], extra[1:])
我这样做是因为我认为
- 摆弄:0.0005秒
- json>py>json:0.0025秒
- 摆弄:0.333
- json>py>json:0.813
- 小提琴:4.5
- json>py>json:10.25
Pythonic的方法是解析JSON字符串,修改值,然后序列化它,速度快60%以上。JSON解析速度非常快,比标准的pickle/unpickle函数快得多,除非有大量数据(数万行),否则可能不会降低速度。不要过早地陷入优化的陷阱 在任何情况下,您都应该以一种优美、通俗易懂的方式编写应用程序,然后(如果必要的话!)在以后优化代码中缓慢的部分
另一种优化方法可以是用C编写相关代码,或者使用C库进行JSON序列化。看一看或看一看,这解释了标准库
simplejson
如何比您正在使用的json
模块快得多。python方法是解析json字符串,修改值,然后序列化它。JSON解析速度非常快,比标准的pickle/unpickle函数快得多,除非有大量数据(数万行),否则可能不会降低速度。不要过早地陷入优化的陷阱
在任何情况下,您都应该以一种优美、通俗易懂的方式编写应用程序,然后(如果必要的话!)在以后优化代码中缓慢的部分
另一种优化方法可以是用C编写相关代码,或者使用C库进行JSON序列化。看一看或看一看,这解释了标准库
simplejson
如何比您正在使用的json
模块快得多。请参阅我的答案更新。使用C库对JSON进行非序列化比摆弄字符串快得多。请参阅我的答案更新。使用C库对JSON进行非序列化比处理字符串快得多。