Python之猜單詞遊戲

2020-09-28 12:01:37

最近上完python課,老師讓用python中的字典寫一個猜單詞遊戲,於是就自己寫了一個程式碼,可用於自己背單詞,如果覺得我寫的單詞太簡單,可以改成自己想要背誦的單詞。
程式碼可能存在瑕疵,還請大佬指教!!

# Word Jumble猜單詞遊戲
import random
#用字典建立單詞序列 
D1=dict(crawled='爬行',stimulate='刺激',difficult='困難',answer='回答',derive='得到',phone='手機',game='遊戲'
        ,hello='你好',economic='經濟',protocol='禮儀')
D2=dict(爬行='crawled',刺激='stimulate',困難='difficult',回答='answer',得到='derive',手機='phone',遊戲='game'
        ,你好='hello',經濟='economic',禮儀='protocol')
# start the game
print(
"""
            歡迎參加猜單詞遊戲 
   根據漢語猜測單詞,或者根據單詞猜測漢語意思.
"""
)
x='y'
while x=='y' or x=='Y':
    print("本遊戲有如下兩種規則:\n")
    print("1:根據漢語猜測單詞\n")
    print("2:根據單詞猜測漢語\n")
    print("請輸入你的選擇:")
    a=int(input())
    if a==1 :
        iscontinue="y"
        while iscontinue=="y" or iscontinue=="Y":
            
            word=random.choice(list(D1.values()))
            print("隨機生成漢語意思為:", word)

            guess = input("\n請你猜滿足該漢語意思的單詞: ")
            while guess != D2[word] and guess != "":
                print("對不起不正確.")
                guess = input("繼續猜: ")
           
            if guess == D2[word]:
                print("真棒,你猜對了!\n")
            iscontinue=input("\n\n是否繼續(Y/N):")
    elif a==2 :
        iscontinue="y"
        while iscontinue=="y" or iscontinue=="Y":    
            word=random.choice(list(D1.keys()))
            print("隨機生成單詞為:", word)

            guess = input("\n請你猜給定單詞的漢語意思: ")
            while guess != D1[word] and guess != "":
                print("對不起不正確.")
                guess = input("繼續猜: ")
           
            if guess == D1[word]:
                print("真棒,你猜對了!\n")
            iscontinue=input("\n\n是否繼續(Y/N):")
    else:
        x=input("輸入不合法是否重新輸入(Y/N):")