前提・実現したいこと
A,B,C,D 4つのinput()文があります。
もしデータが空であればエラーメッセージを出し、もしDにREDまたはBLUEという値が入力されればoutput文を表示する(REDとBLUE以外の値が入力されたら受け付けずに再度同じ質問文が表示される)コードを作っています。
後半部分のDに入っている値がREDもしくはBLUEだったら・・という条件式が機能しません。
原因が分かれば教えていただきたいです。
該当のソースコード
python3
1ef list_input(a): 2 value = input(a) 3 if value == '': 4 print("No data.") 5 raise ValueError 6 return value 7 8alldata = [] 9keepAsking = True 10while keepAsking: 11 12 try: 13 tmp = [] 14 tmp.append(list_input("A: ")) 15 tmp.append(list_input("B: ")) 16 tmp.append(list_input("C: ")) 17 18 dataCheck = True 19 while dataCheck: 20 tmp.append(list_input("D: ")) 21 val = tmp[3] 22 val = val.upper() 23 24#ここらへん前後の条件文がうまく機能していません。ターミナルでREDと入力してもoutputが出てきません。 25 26 if val in ["RED", "BLUE"]: 27 for a,b,c,d in tmp: 28 output = "Result:" + a + " (" + b + ") " + c + d 29 print(output) 30 alldata.append(tmp) 31 dataCheck = False 32 33 except ValueError: 34 pass 35 36 anotherQuestion = True 37 while anotherQuestion: 38 record = input("Do you wish to enter another record? (Y/N) ") 39 if record == "YES": 40 anotherQuestion = False 41 elif record == "NO": 42 anotherQuestion = False 43 keepAsking = False 44 45print("END") 46
補足情報(FW/ツールのバージョンなど)
python3.8.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/07 01:16