簡體   English   中英

在Python中打印表達式的求值結果

[英]Print the result of evaluation of an expression in Python

考慮一下Python中一個簡單的if / else塊,如下所示:

if x:
    print 'True'
else:
    print 'False'

其中x可以是比較,條件或只是字符串/列表/對象。 如何在不編寫循環的情況下打開python shell並找出if x計算結果如何? 即對於某個特定的極端情況值是x TrueFalse

例如,如果x是一個空列表。 我可以打開python shell,分配x = [] ,然后編寫print <function of x> ,在執行時將輸出TrueFalse <function of x>什么?

我覺得我問的是一個很愚蠢的問題,現在無法直截了當,但是我經常發現自己打開了一個外殼,為一個變量指定了一個拐角處的值,並寫了一個if / else來查看哪些拐角處的值會評估為True / False 我只是在尋找一種更簡單的方法來查找shell,而無需編寫4行循環。

您正在尋找功能bool

>>> bool([])
False   
>>> bool(['monty'])
True

Python Docs怎么說。

使用標准真值測試過程將值轉換為布爾值。 如果x為false或省略,則返回False;否則為false。 否則返回True。 bool也是一個類,它是int的子類。 布爾類不能進一步細分。 它唯一的實例是False和True。

您的四行應與

print(bool(x))

暫無
暫無

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

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