7
A
回答
5
import random
def r(minimum, maximum):
return minimum + (maximum - minimum) * random.random()
print r(-1, 1)
編輯︰@ San4ez的random.uniform(-1, 1)
是正確的方法。沒有必要推倒重來......
反正random.uniform()
編碼爲:
def uniform(self, a, b):
"Get a random number in the range [a, b) or [a, b] depending on rounding."
return a + (b-a) * self.random()
23
>>> import random
>>> random.uniform(-1, 1)
0.4779007751444888
>>> random.uniform(-1, 1)
-0.10028581710574902
1
大多數語言都有將在範圍內返回一個隨機數[0函數,1],然後你可以操縱它來適應你需要的範圍。在Python中,函數是random.random
。因此,對於你的範圍爲[-1,1],你可以這樣做:
import random
random_number = random.random() * 2 - 1
增加一倍,我們得到一個範圍[0,2],並通過從一箇中減去它的數量,我們得到[ - 1,1]。
如果你想 integer in a specified range
2
:
print random.randrange(-1, 2)
它使用作爲range
相同的約定,所以不包括上限。
random.uniform
的確,如果你需要浮動值類似的東西,但是如果包括上限是not always clear與否
1
你也可以做這樣的事情
import random
random.choice([-1, 1])
相關問題
- 1. 在SQL Server 2005中生成隨機值
- 2. 在oracle視圖中生成隨機值
- 3. 在VHDL函數中生成隨機值
- 4. 在表中生成10,000個隨機值
- 5. 在PHP中生成隨機值
- 6. 在iPhone中生成隨機值
- 7. 在Ruby中生成隨機值
- 8. 生成隨機值1/X
- 9. 生成訂單隨機值
- 10. mysql隨機生成的值
- 11. 生成隨機GLfloat值
- 12. 生成新的隨機值
- 13. 生成一個隨機值
- 14. random.randint不生成隨機值
- 15. 如何忽略隨機數發生器中的負值
- 16. 如果值在數組中,則生成新的隨機值
- 17. 如何在由C++中的負值和正值組成的範圍內生成一個隨機數?
- 18. Python中生成隨機數
- 19. 生成隨機正雙倍返回負雙倍值
- 20. 如何在VBA中生成隨機正數和負數
- 21. 如何在隨機過程中生成遞增值
- 22. 如何獲得可以爲正值或負值的隨機值?
- 23. 如何生成總和爲預定值的N個隨機值?
- 24. Haskell的隨機發生器:鏈生成的隨機值
- 25. 在兩個整數值之間生成Swift中的隨機值
- 26. 在Pentaho中生成的隨機值(uuid)作爲列值?
- 27. 在Python中生成n維隨機數
- 28. 在Python中上下生成隨機點
- 29. 生成一個隨機的負NSInteger的
- 30. 生成賦予了PDF隨機值
'高清蘭特():收益4 #由公平的骰子生成。保證是隨機的。「 –
非常感謝。但是我不能這樣做。我想在運行腳本時將值作爲參數傳遞給我。 。#!/ usr/bin/env python import sys,random r = sys.argv [1] y = sys.argv [2] print random.range(y,r) – user1393251
@ user1393251 - 你可以做這樣(我的'r'方法與正確的'random.uniform'一樣被調用),只是我在這裏重新發明了輪子......以San4ez的答案。 – eumiro