#python转字符串的几种常用方法的对比
str()
repr()
json.dumps()
##简单说明:
str()会把一个非字符串类型的python数据转换成字符串类型
repr()只是机械的在数据的外部加’ ‘, 对于字符串则会先用\把原来的’ ‘转换成原始字符,再在外面加’ ', 对一个3元素的python字典循环repr()100次会内存溢出.
json.dumps相当于经过优化处理的repr(), 对同样的python字典循环使用json.dumps()100万次会内存溢出.
##效率对比
使用jupyter进行测时是十分方便的.
import json
a = {}.fromkeys(“123”,1)
print(type(a), a, id(a))
%%time
for i in range(10000):
a = str(a)
a = eval(a)
print(type(a), a, id(a))
353ms
%%time
for i in range(10000):
a = repr(a)
a = eval(a)
print(type(a), a, id(a))
138ms
%%time
for i in range(10000):
a = json.dumps(a)
a = json.loads(a)
print(type(a), a, id(a))
94.3ms
差异还是比较明显的.