1

誰かがPythonでこれを行う方法を説明できますか?アイデアは、ユーザーが入力した4桁のコード(例:3968)を把握することです。これを見つけるためのアルゴリズムをどのように設計しますか?これが私が得たものです..:

code=int(input("Enter 4 digit secret code:"))
count=0000
while(count!=code):
    count=count+1
print("Your code was",count)

これは完全に機能します....コードが0で始まる場合を除いて...例:0387「あなたのコードは387でした」を0387に適用して出力します

これの簡単な修正は何ですか?

4

3 に答える 3

5
print("Your code was %04i" % count)

%は、ここに変数が来ることを意味します。04は、4文字にゼロパッドすることを意味します。iは整数であることを意味します。ここにドキュメント。

新しい、より柔軟な.format()フォーマットを使用した代替バージョン:

print("Your code was {:04n}".format(count))
于 2012-11-04T20:49:14.410 に答える
3

あなたはそれをいくつかのフォーマットで印刷する必要があります:

print("Your code was {0:04d}".format(count))

これにより、最大4桁の番号がゼロになります。詳細については、文字列フォーマットのドキュメントを参照してください。

str.zfill()または、このメソッドを使用して、文字列変換後にゼロを追加することもできます。

print("Your code was", str(count).zfill(4))
于 2012-11-04T20:51:11.813 に答える
1

純粋に文字列を使用してそれを行う方法は次のとおりです。

import itertools

code = input("Enter 4 digit secret code:")

for attempt in itertools.product("0123456789", repeat=4):
    attempt = ''.join(attempt)
    if attempt == code:
        print("Your code was", attempt)
        break
于 2012-11-04T20:55:47.010 に答える