2015-11-19 73 views
2

注意:這是我在Python中編寫的第一個程序。我有visual basic和Q basic的經驗。感謝任何迴應!允許用戶從列出的項目中挑選的Python程序

概述:在這個程序中,我希望用戶輸入一個選定的選項,然後提示下一個選項屏幕(目前不在,但我使用print('End Test')來舉例說明)。我想讓用戶能夠輸入單詞的大寫形式或小寫形式。例如:用戶在第一次提示時鍵入「gun」。屏幕將會清除(尚未實施),然後通過另一種選擇提示槍型的選擇。最終,作爲完成的程序,我希望用戶能夠在槍上進行槍,類型和模型的選擇,並能夠查看製作所選擇的這種槍的型號所需的材料。

問題:1)我想包含列表,因爲程序最終將允許用戶返回並再次選擇。那麼,我怎麼可以使用一個列表,或者是有什麼更好的適合這份工作。

2)如何創建清除屏幕的功能? 3)如何確保用戶可以輸入「gun」,「Gun」或「GUN」,程序不區分大小寫,並允許包含字母g,u和n的任何條目按照繼續下一個提示。

想法測試:1)試圖定義程序爲wc。

2)使用Try/Except/Else代替while循環。

3)我以前曾嘗試製作選擇提示列表,但發現它們的工作量比當時值得的多。

當前問題:我編碼到目前爲止是非常簡單的,並在大多數情況下,它的所有作品。只有用戶的第一個選擇的輸入似乎只允許「槍」而不是「槍」。此外,程序一旦達到最終結果就永遠不會打印「結束測試」。

當前代碼:

# Fallout 4 Weapons Mod's, Including the stat improvements, materials required 
# and any levels of perks needed. 
wc = '' 
print() 
print() 
print() 
print('Fallout Weapon Mods Planner!') 
print() 
print() 
print() 
print('Enter one of the following:') 
print() 
print('* Gun') 
print() 
while wc != 'Gun' or 'gun': 
    wc = input('Choice: ') 
    if wc == 'Gun': 
     print('* Pistols') 
     print('* Rifles') 
     print('* Shotguns') 
     print('* Submachine Guns') 
     print('* Heavy Weapons') 
     print('* Energy Weapons') 
     print('* Plasma Weapons') 
     print('* Other') 
     wc = input('Choice: ') 
     break 
    else: 
     print('Invalid entry, be sure to use correct spelling.') 
     continue 

     print('End Test') 

回答

0
  1. 您的代碼明確測試只wc=="Gun";如果您還想接受"gun",則需要更改該測試。
  2. 由於print('End Test')是如何縮進的,因此它是else塊的最後一部分;因爲它只是在continue聲明之後出現,所以永遠不會達到。
+0

謝謝!我不敢相信我完全看過這些。 –

相關問題