Python str() 与 '' - 这是首选

标签 python

我使用了一些示例代码,这些代码使用 str() 而不是我通常习惯的 '' 来表示空字符串。使用 str() 有什么好处吗?例如:

 # .....
 d = dict()
 # .....
 # .....
 if v is None:
     d[c.name] = str()
 else:
     d[c.name] = v

它确实看起来更慢。

$ python -m timeit "'.'.join(str(n)+'' for n in range(100))"
100000 loops, best of 3: 12.9 usec per loop
$ python -m timeit "'.'.join(str(n)+str() for n in range(100))"
100000 loops, best of 3: 17.2 usec per loop

最佳答案

唯一的优点是,如果 str 在本地重新定义,则 str() 将使用该定义,而 '' 则不会。否则,它们是等效的(尽管不相等,因为编译器将在一种情况下发出函数调用而在另一种情况下发出文字)。

关于Python str() 与 '' - 这是首选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51353817/

相关文章:

c++ - 在 C++ 或 Python 中从多个输入文件创建矩阵

python - 如何修复由 <functionwrapper at 0x7fd2e88c98c0>, "Cannot import name path"启动的线程中未处理的异常

python - 在python中实时播放原始音频文件

python - curve_fit 似乎无法拟合高斯总和

python - 无法使用类似 gunicorn 的服务运行 Flask 应用程序

python - 在 python 中读取可变空格分隔表

java - Python:如何通过 python 脚本执行 jar 文件

python - 包 __init__ 中 PyDev 中 Unresolved 导入

python - tf.layers.dense 和 tf.nn.xw_plus_b 的区别

python - 如何限制两个选项之间的一个选项 - argparse - python 3