software - python tutorial




तीन मूल्यों की परीक्षण समानता (5)

क्या यह मुझे लगता है कि यह करता है? यह मुझे लगता है कि हाँ। मैं सुनिश्चित करने के लिए कह रहा हूं।

if n[i] == n[i+1] == n[i+2]:
    return True

क्या ये बराबर हैं?

if n[i] == n[i+1] and n[i+1] == n[i+2]:
    return True

आप समानता का परीक्षण करने के लिए सेट संग्रह का उपयोग कर सकते हैं

len(set({a,b,c}) == 1


ऐसा लगता है कि आप भी == के साथ श्रृंखला बना सकते हैं! =:

>>> a = b = c = 1
>>> a == b == c
True
>>> a == b == c == 1
True
>>> a == b == c == 2
False
>>> a == b == c != 2
True
>>> a == b == c != 1
False
>>> 

यह बराबर है, लेकिन इसके बराबर नहीं है, क्योंकि एक्सेस केवल एक बार किया जाता है। अजगर चेन रिलेशनल ऑपरेटर्स स्वाभाविक रूप से ( in और सहित)।

मामूली अंतर दिखाने का सबसे आसान तरीका:

>>> print(1) == print(2) == print(3)
1
2
3
True
>>> print(1) == print(2) and print(2) == print(3)
1
2
2
3
True

हाँ आप सही हैं ....

आप भी कर सकते हैं

5 > x > 1

या

1 < x < 5

हां, हालांकि, जब तुलनाओं को जंजीर किया जाता है तो सामान्य अभिव्यक्ति का मूल्यांकन एक बार किया जाता है, जब इसका उपयोग किया जाता है and इसका दो बार मूल्यांकन किया जाता है। दोनों मामलों में दूसरी तुलना का मूल्यांकन नहीं किया जाता है यदि पहला गलत है, तो docs से उदाहरण:

तुलनाएँ मनमाने ढंग से की जा सकती हैं, जैसे, x <y <= z, x <y और y <= z के बराबर है, सिवाय इसके कि y का केवल एक बार मूल्यांकन किया जाता है (लेकिन दोनों मामलों में z का मूल्यांकन तब नहीं किया जाता है जब x <y पाया जाता है झूठा होना)।





python