
プログラミング初心者です。randomモジュールの使い方を勉強し、数字あてゲームを作っているのですが、質問があります。
正解の数字の桁数を3桁に指定したとします。
random.randint(0,999)とすると、032は32になってしまいます。
これだと答えに32を入力すると正解になってしまいますが、「032」と入れないと正解にならないようにしたいのですが、どうすればいいでしょうか。コード例を添えていただけると助かります。
一つ、ストリング型を使った方法を思いついたのですが、こんなに面倒なことをしなくてもいいはずだと思い質問させていただきました。↓
import random
keta1 = str(random.randint(0,9))
keta2 = str(random.randint(0,9))
keta3 = str(random.randint(0,9))
seikai = keta1+keta2+keta3
guess = str (input ("3桁の数字を入力してください"))
if keta1 == guess[0] and keta2 == guess[1] and keta3 ==guess[2]:
____print ("正解!")
else:
____print ("不正解")
____print ("正解は:",seikai)
A 回答 (4件)
- 最新から表示
- 回答順に表示

No.4
- 回答日時:
以下のようにしてください。
seikaiには,"000"~"999"の文字列が格納されます。
ーーーーーーーーーーーーーーーーーーーーーーー
# coding: UTF-8
import random
num = random.randint(0, 999)
seikai = format(num,"03d")
print(seikai) #確認用
No.3
- 回答日時:
#coding: cp932
# ↑は使用環境に合わせて
import random
seikai = random.randint(0,999)
#print(seikai)
while True:
guess = input("3桁の数字を入力してください:")
if guess.isdigit():
break
print("数字以外が入力されています。再入力してください。")
if len(guess) == 3 and int(guess) == seikai:
print ("正解!")
else:
print ("不正解")
print ("正解は:{0:03d}".format(seikai))
#print("正解は:%03d" % seikai)
No.2
- 回答日時:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
if __name__ == '__main__':
seikai = random.randint(0, 999)
guess = input("3桁の数字を入力して下さい")
if len(guess) == 3 and seikai == int(guess):
print("正解")
else:
print("不正解\n正解は{0}".format(seikai))
No.1
- 回答日時:
ごめんね、pythonは知らないんだけど
整数をstring型に変換できるなら
整数のフォーマットを指定して変換できないのかな?
例えば整数を表示するときに桁数を指定して表示できるなら
3桁を指定して表示した場合、032と表示されると思う
それをそのまま変換に流用はできないかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語 16進数の2進数への変換
-
16進の10進変換について
-
シェルスクリプトで、空白(ス...
-
Perlで、経過をLoading画面みた...
-
【至急!!!】python言語で本を見...
-
シェルで、ランダム関数を変数...
-
関数「exists」と「defined」の...
-
pythonで演算子を変数に代入す...
-
Adafruit LIS3DH 3軸加速度セン...
-
[Ruby] irbにおける文字化け
-
Pythonでプログラミング プログ...
-
数値かどうかの判定方法
-
JSONで文字列が長い時
-
Application.ScreenUpdating = ...
-
ACCESS テキストボックスを隙...
-
文字の横にプルダウンを表示さ...
-
実行時エラー 3020の対策
-
複数列を持ったリストボックス...
-
テーブル内でドロップダウンメ...
-
vbaでxmlからNodeListでデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
シェルスクリプトで、空白(ス...
-
16進の10進変換について
-
I2C接続のLCDディスプレイを使う
-
Pythonでコンソールをクリアす...
-
pythonの*
-
c言語 16進数の2進数への変換
-
条件文の扱い方について
-
関数「exists」と「defined」の...
-
【至急!!!】python言語で本を見...
-
ファイルに書き込む
-
EUCで保存されたスクリプトにて...
-
Perl・正規表現が分かりません
-
改行
-
perlの型と8進数、10進数
-
ソートを利用して文字を昇順で...
-
配列 各項目を$n倍するプログ...
-
表という文字の扱いについて
-
シェルスクリプト+perl
-
ポーリングとHTMLデータのリロ...
-
awkの正規表現での最左最短マッ...
おすすめ情報