无法理解为什么两个值“看起来”相同但不相等

2024-03-28 17:23:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用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,)

有人知道这里发生了什么吗?你知道吗


Tags: 应用程序ifstatuspycharmrow2printvar1
1条回答
网友
1楼 · 发布于 2024-03-28 17:23:32

row2是一个包含1个元素的元组。 字符串的%格式可以与单个值或一个或多个值的元组一起使用。你知道吗

print "Status 2: %s" %row2中,元组被解包并使用唯一的元素。在print "%s != %s" % (VAR1, row2)中,您已将元组row2打包到另一个元组中,因此第二个%s显示此元组的表示,例如(3,)。你知道吗

相关问题 更多 >