python - 为什么元组以字符串格式使用

标签 python syntax

我遇到过这样的代码

print "Users connected: %d" % (userCount, )

我在想,有什么理由不把它们写进去

print "Users connected: %d" % userCount

他们似乎有相同的输出

最佳答案

如果您的变量包含元组,则没有显式元组的代码可能会咬您。

>>> nums = (1, 2, 3, 4)
>>> print "debug: %r" % (nums, )
debug: (1, 2, 3, 4)
>>> print "debug: %r" % nums
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: not all arguments converted during string formatting

因此,始终在格式字符串语法中使用元组是防御性编码的一部分。

关于python - 为什么元组以字符串格式使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4142243/

相关文章:

python - 如何在Python中优化时间步长算法?

python - 如何从命令行列出应用的迁移?

python - 使用 Selenium WebDriver 选择元素后跟文本

C++为什么模板标题底部的#include?

c++ - C++ 构造函数中前导下划线的含义是什么?

python - 我想在Python中将字符串列表(温度值: [ '23.14C' , '19.91C'] ['54.04F', '32.64F'])转换为 float

python - Python 尝试使用一些 Twitter 数据更新 Sqlite3 数据库时数据类型不匹配

mysql - 将表行转换为 mysql 中的列

linux - 无法使用 postgres 创建空数据库——更改目录时权限被拒绝

ruby-on-rails - 尝试启动 Rails 服务器时出现语法错误