python - "If x== True" और "if x:"[डुप्लिकेट] में क्या अंतर है




(2)

अंतर यह है कि if x: का सत्य मान जाँचता है। 0 को छोड़कर सभी पूर्णांकों का सत्य मान सत्य है (इस मामले में, 2)।

if x == True: हालाँकि, x तुलना True के मान से करता है, जो एक प्रकार का 1 । एक गलत मान में 2 == 1 परिणाम की तुलना।

सटीक होने के लिए, दो आसन्न अवधारणाएं हैं: * एक "सत्य मूल्य" है, जो if , while आदि के व्यवहार को निर्धारित करता है, if * अन्य True और False मूल्य हैं, जिनके संबंधित सत्य मूल्य "सच" हैं और "झूठा", लेकिन आवश्यक नहीं हैं ओ.टी. अन्य सच्चे सम्मान के बराबर है। झूठे मूल्य।

यदि आपको किसी भी कारण से True और False के सटीक मूल्यों की जांच करने की आवश्यकता है, तो आप ऐसा कर सकते हैं if x is True या if x is False । यह सुनिश्चित करता है कि यदि y वास्तव में True तो यह परीक्षा पास करेगा, यदि यह 1 , तो यह नहीं होगा।

इस सवाल का पहले से ही यहाँ एक जवाब है:

हैलो स्टैकओवरफ़्लो समुदाय :-)

मैं फिलहाल पायथन सीख रहा हूं और मैं "ट्रू / फाल्स" कॉन्सेप्ट को पूरी तरह से नहीं समझ पा रहा हूं।

पायथन में संख्या 0 "गलत" और 1 "सच" से जुड़ी है।

जब मैं निम्नलिखित कोड लिखता हूं

x = 2
y = 1

if y == True:
    print("Y is True")
if x == True:
    print("X is True")
else:
    print("X is False")

मुझे "वाई ट्रू" मिलता है, क्योंकि "1" सत्य है। और मुझे "एक्स गलत है" मिलता है, लेकिन मैंने सोचा कि यह भी "सच" होना चाहिए, क्योंकि एक मान (एक्स = 2) है और "कोई नहीं, 0, आदि।"

जब मैं लिखता हूँ

if x:
    print("X is True")
else:
    print("X is False")

तब मुझे "X ट्रू" मिलता है, क्योंकि x खाली नहीं है और इस तरह सत्य है।

"If x:" और "if x == True" के बीच सटीक अंतर क्या है?


समस्या को देखने के समान तरीके:

"if x" <==> "if bool(x)"

चूँकि आपका x एक पूर्णांक है:

"if x" <==> "if x != 0"

तथा

"if x == True"  <==> "if x == 1"




python