2016-11-19 98 views
-2

對於一件作業,涉及的部分代碼要求用戶在3個輸入中進行選擇。爲了確保代碼可以接受任何格式的選項,我使用了.lower(),如下所示。有沒有一種方法來大寫特定的字母在Python中的值?

while True: 
    RequestTea = input("What tea would you like? English Breakfast, Green Tea or Earl Grey? ").lower() 
    if RequestTea.lower() not in ('earl grey','english breakfast','green tea'): 
     print("We do not offer that unfortunately, please choose again.") 
    else: 
     break 

爲了確認用戶的選擇,我這要取決於價值三種不同的打印使用,

if RequestTea == 'earl grey': 
    print("Earl Grey Tea selected!") 
if RequestTea == 'green tea': 
    print("Green Tea selected!") 
if RequestTea == 'english breakfast': 
    print("English Breakfast Tea selected!") 

爲了減少這兩行代碼,我試圖使它打印(」 RequestTea',「selected」),但是我想要用大寫字母的第一個字母來顯示茶的名字,並且輸入是.lower()。 我希望茶名(請求茶)作爲標題顯示,然後「選擇」以小寫形式顯示。

非常感謝。

+1

嘗試''打印 – vaultah

+0

我很確定我昨天看到了另一個用戶的確切問題和代碼。你爲什麼不檢查那個答案? – Inconnu

+0

我已經看過,但我看不出如何保持其他部分小寫。請隨時發佈答案,以便我可以關閉此@Achilles –

回答

0

還有另一種方式做,在打印語句:( '!選擇' RequestTea.title())

offered_tea = ('earl grey', 'english breakfast', 'green tea') 
while True: 
    RequestTea = input("What tea would you like? English Breakfast, Green Tea or Earl Grey? ") 
    RequestTea_Lower = RequestTea.lower() 
    if RequestTea_Lower in offered_tea: 
     print(RequestTea_Lower.title(),' selected!') 
    else: 
     print("We do not offer that unfortunately, please choose again.") 
+0

讚賞。將來會非常有用,謝謝@Achilles –

0
offered_tea = ('earl grey', 'english breakfast', 'green tea') 
while True: 
    RequestTea = input("What tea would you like? English Breakfast, Green Tea or Earl Grey? ").lower() 
    if RequestTea in offered_tea: 
     print('{} selected!'.format(RequestTea.title())) 
    else: 
     print("We do not offer that unfortunately, please choose again.") 

出來:

What tea would you like? English Breakfast, Green Tea or Earl Grey? earl grey 
Earl Grey selected! 
+0

工作得很好。謝謝。 –

相關問題