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. 匹配除'-0'以外的任何數字(或否定數字)
- 3. 生成字母數字代碼的非重複列表
- 4. 在bash中生成非重複的隨機數字序列
- 5. python中的重複數字
- 6. 如何在python中生成具有特定長度的任意字符串?
- 7. 如何在類中的函數中生成非重複的隨機數字?
- 8. 在Python中 - 如何生成不重複的隨機數字
- 9. 生成除特定值以外的隨機數
- 10. 生成非重複數字,對數據庫保持警惕
- 11. 刪除除空格以外的所有非數字字符
- 12. 如何在Java中使用非重複數字生成隨機數字?
- 13. 找到一個數字中的特定重複數字
- 14. 生成特定的數字序列
- 15. Android - 生成非重複的隨機數
- 16. 生成非重複的隨機數
- 17. Java生成非重複的隨機數
- 18. 計數的非重複的數字
- 19. 生成沒有重複數字的數字列表
- 20. Vb.net隨機數字生成器重複相同的數字
- 21. 在python中生成任意長度的數字的升序列表
- 22. 從數據庫中生成除ID字段以外的隨機字
- 23. XSLT意外重複文字
- 24. 以任意數量和任意時間重複發生的付款?
- 25. 在Javascript中爲任意整數生成教會編碼數字
- 26. MATLAB:非常小的數字除以非常小的數字
- 27. (C#/ ASP.Net/Javascript/MySQL)中的任意數字自動生成
- 28. 爲每個生成非重複數字(值)<a>標記
- 29. 使用PHP或Javascript生成非重複數字
- 30. 生成隨機但非重複數字(C++)
「非重複」 和 「隨機」 是互斥的。隨機序列重複數字。 – 2014-09-25 02:25:22
@ IgnacioVazquez-Abrams:不一定,您可以例如生成一個序列的隨機排列。因此,該列表是隨機的,但不重複... – 2014-09-25 02:40:55
@CommuSoft:這是一個隨機的「輸出」。可以生成另一個與第一個序列完全相同的隨機置換。 – 2014-09-25 02:50:55