簡體   English   中英

不明白“ while not”循環的工作原理

[英]Don't understand how a “while not” loop works

我目前正在嘗試學習python。 我正在研究Al Sweigart的《使用Python自動化無聊的東西》 在他的實例while循環,他使用一個not狀態與他while環(如圖所示在下面的代碼)。

name = ''
while not name != '':
    print('Enter your name:')
    name = input()
print('How many guests will you have?')
numOfGuests = int(input())
if numOfGuests !=0:
    print('Be sure to have enough room for all your guests.')
print('Done')

此代碼可以正常工作。 我對此感到困惑。 我們將name設置為'' (空白值),然后在while循環中,我們擁有while not name !='' 為什么這對while name != ''不起作用?

while循環僅在條件成立后才會循環。 在條件反轉之前放置一個not not True == Falsenot False == True

只要(not (name != ''))為True while not name != ''就會循環。

not運算符會反轉您的條件,因此while循環條件在邏輯上等效於說,而name等於空字符串”。 這是因為您擁有語句name != ''語句,然后對它使用了not運算符來對其進行反轉。 這樣,while循環將繼續請求用戶輸入不等於“”的輸入名稱。

暫無
暫無

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

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