Python中是否有方法可以生成除特定数字之外的范围内的随机非重复数字。例如,我想生成1到10之间的数字,但“ 1“不应该生成。任何帮助将不胜感激。谢谢。生成除Python中的特定数字以外的任意非重复数字
0
A
回答
0
假设你想在a
范围中排除n
到b
import random
random.choice([random.randint(a,n-1),random.randint(n+1,b)])
+0
当我尝试在random.choice中使用random.sample而不是random.randint时,它会抛出一个错误,指出样本大于人口 – user3330378 2014-09-25 04:01:44
+0
不需要在random.choice中同时使用random.sample。如果您需要使用样本进行一次随机选择,您可以执行'print random.sample(population,1)[0]' – g4ur4v 2014-09-25 05:26:00
1
使用random.sample()
有人口不包括你不喜欢的值(一个或多个)。
>>> import random
>>> population = range(2,11) # 2,3,4,5,6,7,8,9,10
>>> print random.sample(range(2,11), 5)
[6, 2, 4, 8, 9]
或者另一个例子,如果你不想 “42”:
>>> population = range(1, 101) # 1,2,...,100
>>> population.remove(42)
>>> print random.sample(population, 20)
[45, 10, 86, 7, 79, 39, 88, 80, 41, 85, 25, 96, 68, 55, 5, 74, 8, 9, 65, 18]
相关问题
- 1. 生成字母数字代码的非重复列表
- 2. 如何在python中生成具有特定长度的任意字符串?
- 3. 如何在类中的函数中生成非重复的随机数字?
- 4. 在Python中 - 如何生成不重复的随机数字
- 5. 生成除特定值以外的随机数
- 6. 删除除空格以外的所有非数字字符
- 7. 找到一个数字中的特定重复数字
- 8. 生成非重复的随机数
- 9. 计数的非重复的数字
- 10. 在python中生成任意长度的数字的升序列表
- 11. MATLAB:非常小的数字除以非常小的数字
- 12. 在Javascript中为任意整数生成教会编码数字
- 13. 以任意数量和任意时间重复发生的付款?
- 14. (C#/ ASP.Net/Javascript/MySQL)中的任意数字自动生成
- 15. 使用PHP或Javascript生成非重复数字
- 16. 生成随机数字而不重复
- 17. 生成一个排除特定字符的随机数
- 18. 生成基于数字的,没有重复中4个位数
- 19. Python的非数字端口例外
- 20. 删除Excel字段中的特定关键字和重复值
- 21. 从重复数字的数组中删除数字
- 22. 在Java中生成数百万个非重复的随机数
- 23. Java:生成一个数字列表而不重复数字?
- 24. 如何在数组中生成一组字符的非重复可能组合?
- 25. 数字变量递增 - 运行时发生意外的数字
- 26. 循环寻找非重复的数字
- 27. ruby正则表达式匹配除特定字符以外的任何字符
- 28. 生成任意数量的if语句和字典索引
- 29. 在Python中删除重复的字母
- 30. 删除除破折号之外的非数字字符
“非重复” 和 “随机” 是互斥的。随机序列重复数字。 – 2014-09-25 02:25:22
@ IgnacioVazquez-Abrams:不一定,您可以例如生成一个序列的随机排列。因此,该列表是随机的,但不重复... – 2014-09-25 02:40:55
@CommuSoft:这是一个随机的“输出”。可以生成另一个与第一个序列完全相同的随机置换。 – 2014-09-25 02:50:55