如果一个值已经是字符串,我是否应该避免将其转换为字符串?
- 论坛
- 如果一个值已经是字符串,我是否应该避免将其转换为字符串?
9 浏览
如果一个值已经是字符串,我是否应该避免将其转换为字符串?
有时候你需要使用列表推导来将所有的东西都转换成字符串,包括字符串本身。
b = [str(a) for a in l]
但是我是否需要这样做:
b = [a if type(a)==str else str(a) for a in l]
我想知道对于字符串来说,str
是否被优化得足够好,以至于不会创建另一个字符串的副本。
我尝试过:
>>> x="aaaaaa" >>> str(x) is x True
但是这可能是因为Python可以缓存字符串并重复使用它们。但这种行为对于任何字符串的值都是保证的吗?