前提
Python初心者なのですが、今、関数を使ったしりとりゲームを作っています。
以下に記載のコードで実現されるようなしりとりゲームです。
しかし、以下のコードには問題があります。
それは、グローバル変数を使ってしまっている点です。
グローバル変数を使わないと、リストと変数を保持できないからです。
実現したいこと
グローバル変数を使わないで、同じようなしりとりゲームを実現したいです。
発生している問題・エラーメッセージ
-
該当のソースコード
Python
1l = [] 2turn=0 3 4def shiritori_judge(words_a,words_b): 5 global l 6 global turn 7 turn+=1 8 print(f'A君:{words_a}') 9 print(f'B君:{words_b}') 10 if turn == 1: 11 if words_b[-1] == 'ん' or words_a[-1] != words_b[0]: 12 ans = False 13 return ans 14 else: 15 l = words_b 16 17 if turn > 1: 18 if l[-1] != words_a[0]: 19 ans = True 20 return ans 21 elif words_b[-1] == 'ん' or words_a[-1] != words_b[0]: 22 ans = False 23 return ans 24 else: 25 l = words_b 26 27 28print('しりとりチェック') 29while True: 30 words_1,words_2 = [i for i in input('2つの単語を入力してください:').split()] 31 if words_1[-1] == 'ん': 32 print(f'A君:{words_1}') 33 print('A君の負け') 34 break 35 ans = shiritori_judge(words_1,words_2) 36 if ans == False: 37 print('B君の負け') 38 break 39 elif ans == True: 40 print('A君の負け') 41 break 42 43
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/09/01 13:32