2016-01-26 124 views
-1

我在練習問題上遇到困難。如果Python中的其他語句

實現一個程序,首先要求用戶輸入登錄ID(即字符串)。程序然後檢查用戶輸入的ID是否在有效用戶的列表['joe','sue','hani','sophie']中。根據結果​​,應該打印適當的信息。無論結果如何,您的功能都應打印「完成」。

這裏是我寫的

login = input('enter login name') 
if login == 'joe' or 'sue' or 'hani' or 'sophie': 
    print('you are in!') 
else: 
    print('User unknown') 

print('Done.') 

代碼然而不管我輸入我的代碼總是返回「你在!」我不知道爲什麼。

回答

1

改變,如果登錄==「喬」或「告」或「哈尼」或「蘇菲」:

到如果登錄==「喬」或登錄==「告」或登錄=='哈尼'或登錄=='sophie':

現在它正在檢查登錄是否等於'joe',或者'sue'或'hani'或'sophie'是否屬實,因爲它們的大小是不等於0

0

試試這個,它會給你的情況下,更多的靈活性名稱您數量越大:

loginList = ['joe', 'sue', 'hani', 'sophie'] 
if login in loginList: 
    print('you are in!') 
else: 
    print('User unknown') 
+0

這並沒有真正解決他的主要問題,這是誤解條件評估的方式。你只給了他一個選擇。他未來可能會有幾乎完全相同的問題。 – Carcigenicate