[英]Python input based on short circuit
我熟悉Python短路(AND,OR,NOT),但這對我來說很奇怪。
這里是:
以下Python代碼行是做什么的?
day = input("What day do you want [Tuesday]: ") or "Tuesday"
我不確定從用戶那里得到什么以及它如何有用。
在Python 3,這將設置day
到什么類型的用戶,除非用戶只需點擊進入。 在這種情況下, input
將返回空字符串,其真值是false,因此將改用"Tuesday"
。 您可以在這里看到:
>>> "" or "Tuesday"
'Tuesday'
如果用戶輸入為非空,則其真值將為true並將其用作or
表達式的結果:
>>> "Monday" or "Tuesday"
'Monday'
如果input()
調用的結果為false(在這種情況下為空字符串),則day
將收到默認值'Tuesday'
。 如果用戶在按Enter鍵之前根本沒有輸入任何字符,則將day
設置為他們輸入的字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.