2017-04-01 51 views
0

有效的名稱我想這個代碼:如何檢查是否輸入是在python

name = str(input("What is your name? ")) 
if not name.isalpha(): 
     print("Please enter a valid name.") 
     continue 

但是當我輸入一個名稱用空格或全名,我得到了「請輸入有效的名稱。 「語句,即使我只輸入了一個沒有任何其他類型數據的名字,例如int,float。

空間是否算作字符串? 如果不是,我應該如何更改我的代碼,以便接受帶空格的全名但不接受數字?

謝謝。

+0

使用正expresions – Gerardo

+0

http://stackoverflow.com/questions/19859282/check-if-a-string-contains-a-number – chbchb55

回答

0

看起來你只是想檢查每個字符是空格還是字母。你可以通過閱讀每封信來手動完成。

name = str(input("What is your name? ")) 
if not all(x.isalpha or x == "" for x in name): 
    print("Please enter a valid name.") 
else: 
    print(name) 
+0

我不僅要檢查,如果每個字符是一個空間或信。我想檢查它是否沒有數字,但是有一個有效的名字,可能包含空格,因爲我稍後會在程序中使用這些數據。 – BjCuizon

+0

@BjCuizon。你需要用一個有效的名字來確切地說明你的意思。沒有這些信息,你的問題是無法回答的。 – merlin2011