如何生成一些全为奇数的随机数

新手上路,请多包涵
import random

myfile = open('numbers.txt', 'w')
file_size = random.randint(4,7)

for count in range(file_size):
    numbers = random.randint(5,19)
    myfile.write(str(numbers) + '\n')

myfile.close()

这是我到目前为止所拥有的,但我需要数字是所有赔率和“file_size”告诉代码的正确赔率。每个整数必须是随机的,介于 5 和 19 之间(含)。

原文由 Mike 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 669
2 个回答

您可以使用 random.randrange 接受可选 step 参数:

 >>> import random
>>> random.randrange(5, 19+1, 2)
9

原文由 falsetru 发布,翻译遵循 CC BY-SA 3.0 许可协议

要生成 1 到 10 之间的奇数,请使用 random.randrange(start,end,step)

 odd_rand_num = random.randrange(1,10,2)
odd_rand_num = 7

要生成随机奇数列表,请使用:

 odd_rand_list = [random.randrange(1,10,2) for p in range(0,10)]
odd_rand_list = [3, 9, 7, 9, 1, 1, 9, 7, 3, 9]

原文由 Pallawi.ds 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题