<分区>
我想生成一个随机的 4 位数字,其中没有重复的数字。
import random
sets = random.sample(range(0,9), 4)
这会生成一组随机的 4 位数字,但我希望它是一个整数。我怎么做?
标签 python python-3.x
<分区>
我想生成一个随机的 4 位数字,其中没有重复的数字。
import random
sets = random.sample(range(0,9), 4)
这会生成一组随机的 4 位数字,但我希望它是一个整数。我怎么做?
最佳答案
(假设 OP 表示所有数字)
无需使用数字并且必须操作 str
并返回 int
,只需从 ascii 数字开始:
>>> import string
>>> ''.join(random.sample(string.digits, 4))
'4561'
如有必要,您可以转换为 int()
。
如果第一个数字是 0
,OP 打算做什么还不清楚。
对于纯数值方法,您可以使用 functools.reduce
:
>>> import functools as ft
>>> ft.reduce(lambda s, d: 10*s + d, random.sample(range(10), 4))
2945
关于python - 如何在 python 中将集合转换为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43360429/