0

こんな感じのメニューを作っています。

1-quit
2-multiplication
3-division

何か関係があるこのエラーを修正できないようですrandom.randint

私がこれまでに行ったこと:

iFirst= random.randint(1,10)
iSecond = random.randint (1,10)
import random
print(" Made by: Ahmed\n --------------------") 
print("1 - quit") 
print("2 - Multiplication")
print("3 - Division")

while 1: 
    choose=input("\n\t:") 
    if choose=="1": 
        break # we basically break the while loop so it stops 
    if choose=="2": 
        a=iFirst*iSecond
        print(str(iFirst) + "*" + str(iSecond))
        print("a") + (random.randint()1,10)
        print("a") + (random.randint()1,10)
        print("b") + (random.randint()1,10)
        print("c") + (str(a)   
    if choose =="3":

「2」を選択すると、ランダムな答えを持つ乗算の質問がランダムに生成され、すべてが常に異なり、実際の答えが特定の文字にとどまらないようにしようとしています。例えば。答えが「b」の場合、次の質問は異なります。

私はそれを少しこのようにしたいのですが、私には難しすぎるのでできません.

5*4 = ?
a)10
b)32
c)20
d)42

2を押すか、間違った答えを得るたびに数字をランダム化するようにしようとしています。そこから残りの作業を行うことができますが、現時点では、私は Python の初心者であるため、理解できないエラーが表示されます。私は助けが必要です。私はあなたたちが私のような人々を助けるためにここにいるだけだと知っているので、あなたたちが私のためにすべてをしてほしくない.

前もって感謝します!

4

2 に答える 2

0

答えを a に入れてlistから使用できますrandom.shuffle()

>>> answers = [10, 32, 20, 42]
>>> import random
>>> random.shuffle(answers)
>>> for c, item in zip('abcd', answers):
...     print("{}) {}".format(c, item))
... 
a) 20
b) 32
c) 10
d) 42

再びシャッフルすると、別の順序になります

>>> random.shuffle(answers)
>>> for c, item in zip('abcd', answers):
...     print("{}) {}".format(c, item))
... 
a) 32
b) 20
c) 42
d) 10
于 2013-07-01T07:03:56.633 に答える
0

これは(上記のように)ある(random.randint()1,10)べきです。また、この行をファイルの先頭にrandom.randint(1,10)移動する必要があります。import random

print ステートメントも修正する必要があります。より良いアプローチは次のとおりです。

print('{}*{}'.format(iFirst,iSecond))
print('a) {}'.format(random.randint(1,10)))
print('b) {}'.format(random.randint(1,10)))
print('c) {}'.format(a))
于 2013-07-01T07:06:02.637 に答える