2016-04-10 207 views
0

因此,我正在編寫一個基本程序來計算用戶名中的字符數和每個元音發生的次數。但是,只有在用戶輸入大寫字母時纔會計數,但我已將其設置爲將字符串轉換爲小寫字母。將字符串轉換爲小寫

n = input("Please enter your name: ") 
n.lower() 
x = (len(n)) 
a = n.count('a') 
e = n.count('e') 
i = n.count('i') 
o = n.count('o') 
u = n.count('u') 

print("Your name has {0} a, {1} e, {2} i, {3} o, {4} u and is {5} characters long.".format(a,e,i,o,u,x)) 

這是怎麼回事?

+0

'N = n.lower()','未n.lower()'。字符串是不可變的,當你調用它們的方法時不會改變。 – zondo

回答

3

您必須指定給n; n.lower()不會更改n,但會返回小寫的新字符串。

取代:

n.lower() 

與:

n = n.lower() 
相關問題