2016-04-20 81 views
0

我是編程和使用Python 3.5的新手。當我運行下面的代碼時,它會跳過我的if和elif語句,並在輸入應該在if或elif行代碼中運行的輸入值(即,輸入的輸入是chris或sam)後直接跳轉到else。我不明白爲什麼這是考慮到所有的值都是字符串。在Python輸入返回不會被我的if或elif語句檢測直接跳到else語句,爲什麼?

這裏是我的代碼:

name = input('What is your name?\n') 
name = name.lower() 

if name is 'chris': 
    print('Hi Chris!') 
elif name is 'sam': 
    print('Hi Sam!') 
else: 
    print('Who are you?') 

感謝提前:)

回答

0

您應該使用==不就是。測試一個對象是否與另一個對象類型相同(如果值例如是None)。