前提・実現したいこと
「同じ文字を三回以上使えません」を一回だけ表示して、SecredCodeの入力に戻りたい
発生している問題・エラーメッセージ
「同じ文字を三回以上使えません」というメッセージが複数回表示される。 continueを書いているのに、SecredCodeの入力位置に戻らない
該当のソースコード
Python
1SecretCode = None 2if SecretCode == None: 3 while True: 4 try: 5 SecretCode = int(input('6~8個の数字でパスワードを設定して下さい:')) 6 print(SecretCode) #不要 7 print(len(str(SecretCode))) # 不要 8 if len(str(SecretCode))<6 or len(str(SecretCode))>8: 9 continue 10 for i in str(SecretCode): 11 if str(SecretCode).count(i) > 2: 12 print('同じ文字を3回以上使えません') 13 continue 14 break 15 except: 16 print('数字のみでパスワードを設定して下さい')
試したこと
ためしにcontinueをbreakにかえてみると「同じ文字を三回以上使えません」というメッセージが一回だけ表示された(なぜかは分からなかった)
補足情報
SecredCodeを4444444にしてみると以下のような実行結果が得られた
6~8個の数字でパスワードを設定して下さい:4444444
4444444
7
同じ文字を3回以上使えません
同じ文字を3回以上使えません
同じ文字を3回以上使えません
同じ文字を3回以上使えません
同じ文字を3回以上使えません
同じ文字を3回以上使えません
同じ文字を3回以上使えません
Process finished with exit code 0
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。