簡體   English   中英

在python中,1, 2 == 1, 2是什么意思?

[英]In python, What does this means 1, 2 == 1, 2?

有人可以解釋輸出嗎? 我想檢查兩個數字是否相等,但沒有正確計算。

Input: 1, 2 == 1, 2
Output: (1, False, 2)

您正在創建一個包含 3 個元素的元組,即12 == 12 第一個和最后一個元素是整數文字,因此它們在 Python 中的值分別為12可能不足為奇。 元素2 == 1是一個計算結果為False的單個表達式,因為2不等於1

如果要檢查具有兩個元素(1,2)(1,2)的兩個元組的相等性,則必須執行(1, 2) == (1, 2)以便 Python 知道哪些元素以逗號分隔視為單個元素。

在 REPL 中,您可以通過比較您擁有的內容來弄清楚這一點

>>> (1, 2) == (1, 2)
True
>>> (1, 3) == (1, 2)
False
>>> (3, 1) == (2, 1)
False

您正在制作一個由 3 個元素組成的元組,int、boolean 和 int。

如果你想同時比較使用

[1, 2] == [1, 2]
print 1, 2 == 1, 2

這是

print 1, False, 2 //since 1 not equal to 2

這將輸出

1 錯誤 2

實際上 2==1 會給你錯誤,因為 2 不等於 1。所以更好的方法是使用 if 語句

a = 1
b = 2
if b > a:
  print(b + " is greater than " + a)
elif a == b:
print("a and b are equal")
else:
print("a is greater than b")

根據您的代碼,這是一個簡單的相等性檢查。 如果兩個操作數都為真,則返回真,在您的情況下,它是 1 == 2,因此它將返回假,因為兩者都不相同。 如果要比較它們,則在它們上面加上大括號。

操作順序不是你想的那樣。 == 的優先級高於逗號。 因此,您正在創建一個包含以下元素的 3 元組:

1
the result of the Boolean test to see whether 2 equals 1
2

這可能是你想要的,試試吧:

>>> (1,2) == (1,2)
True

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM