我需要此問題的幫助:我創建了一個其參考號是隨機數的類。問題是這樣的:每次打一個電話,我得到相同的號碼,使得隨意使用毫無意義;有什麼辦法可以解決這個問題嗎?需要隨時撥打電話號碼創建隨機號碼
import random
class dicethrow:
result = random.randint (1,6)
a = dicethrow()
b = dicethrow()
使用此,a == b總是,我需要他們是不同的。 謝謝!
我需要此問題的幫助:我創建了一個其參考號是隨機數的類。問題是這樣的:每次打一個電話,我得到相同的號碼,使得隨意使用毫無意義;有什麼辦法可以解決這個問題嗎?需要隨時撥打電話號碼創建隨機號碼
import random
class dicethrow:
result = random.randint (1,6)
a = dicethrow()
b = dicethrow()
使用此,a == b總是,我需要他們是不同的。 謝謝!
怎麼樣
class dicethrow:
def __init__(self):
self.result = random.randint(1, 6)
所以問題是,只要我創建類,每一個參考被創建;你的方式,每次我打電話給班級,它創建的數字,我是對的嗎?無論如何,它的作品,謝謝! – Tanke88
在你的情況result
是一個類(或靜態)變量 - 它被定義一次,是所有場合的同一。
在__init__()
方法定義result
:
import random
class dicethrow:
def __init__(self):
self.result = random.randint(1,6)
a = dicethrow()
b = dicethrow()
print a.result
print b.result
參見:
這是因爲結果是一個靜態變量,通過你的類的所有實例共享。
你所需要的就是一個函數:
import random
def dicethrow():
return random.randint (1,6)
a = dicethrow()
b = dicethrow()
的
可能重複[random.choice不是隨機(http://stackoverflow.com/questions/1366047/random-choice-not-random) – bartimar