无法使此随机数生成器正常工作

时间:2018-12-29 18:56:13

标签: python loops random

我正在尝试制作一个随机数生成器并返回该随机生成的数字,但是此代码返回该随机数之前的所有数字。如何只返回最后打印的字符串?

import random

from_num = int(input('Generate a random number:\nFrom:'))
to_num = int(input('To:'))

for num in range(random.randrange(from_num,to_num+1)):
    if True:
        print(f'Random number: {num}')
    else:
        print('You did not entered valid min/max numbers')

例如from_num = 0to_num = 20的输出,而不是'11'可以返回这两个给定值之间的任何数字。

Random number: 0
Random number: 1
Random number: 2
Random number: 3
Random number: 4
Random number: 5
Random number: 6
Random number: 7
Random number: 8
Random number: 9
Random number: 10
Random number: 11

4 个答案:

答案 0 :(得分:1)

按照上面的注释,仅打印随机值,而不重复任何操作:

import random

from_num = int(input('Generate a random number:\nFrom:'))
to_num = int(input('To:'))

if from_num > to_num:
    print('You did not entered valid min/max numbers')
    return

random_num = random.randrange(from_num,to_num+1):
print(f'Random number: {random_num}')

答案 1 :(得分:0)

替换此:

for num in range(random.randrange(from_num,to_num+1)):
    if True:
        print(f'Random number: {num}')
    else:
        print('You did not entered valid min/max numbers')

使用:

ran_num = random.randint(from_num,to_num)
print("Random number is " + str(ran_num))

答案 2 :(得分:0)

为什么会有循环?

import random

from_num = int(input('Generate a random number:\nFrom:'))
to_num = int(input('To:'))

if to_num > from_num:
    ran_number = random.randrange(from_num,to_num+1)
    print(f'Random number: {ran_number}')
else:
    print('You did not entered valid min/max numbers')

答案 3 :(得分:0)

如果您尝试使其成为用户可以选择的范围,那么我不知道,但是如果您希望将其随机放在按钮上,请单击此处,然后代码首先执行此操作 int Rnumber; 然后

TextView RandomNumber;

“ RandomNumber”您必须创建一个具有id RandomNumber的文本视图

哦!在我忘了之前,您需要一个ID为GenRan的按钮。 然后输入这段代码

Button GenRan;

插入此代码

Random Number;

然后输入此代码

  Number = new Random();
            Rnumber = Number.nextInt(1000);
            RandomNumber.setText(Integer.toString(Rnumber));

您很好,顺便说一句,“(1000)”是它可以生成的最大数字,因此它可以在1-1000范围内更改,如果需要的话