我正在Python 2.6.6中的PyCharm上编写一个应用程序而没有得到我期望的输出:
if VAR1 != row2:
print "Status 1: %s" %VAR1
print "Status 2: %s" %row2
print "%s != %s" % (VAR1, row2)
输出:
Status 1: 3
Status 2: 3
3 != (3L,)
有人知道这里发生了什么吗?
答案 0 :(得分:3)
row2
是一个包含1个元素的元组。
字符串的%
格式可以与单个值或一个或多个值的元组一起使用。
在print "Status 2: %s" %row2
中,解压缩元组并使用唯一元素。在print "%s != %s" % (VAR1, row2)
中,您已将元组row2
打包到另一个元组中,因此第二个%s
显示此元组的表示形式,例如(3,)
。