2015-01-03 106 views
-5

任何人有任何好主意如何解決這個問題。我試圖找出是否可以使用隨機模塊來創建隨機結果。例如,您可以創建一個範圍爲1,3的數字,這些數字等於在後臺選擇數字時觸發的不同功能。這是我正在嘗試的代碼。我知道它不起作用,但我仍然嘗試不同的想法,但會喜歡一些幫助。Python隨機模塊

import random 

random.choice('1 2') 

if random.choice == "1": 
    print("Hello") 

if random.choice == "2": 
    print("Goodbye") 
+2

請閱讀多一點功能Python和一般的Python語法。 – BartoszKP

+2

'random.choice'是一個函數,所以從不goong等於一個字符串... – jonrsharpe

回答

2

你可以嘗試這樣的事情:

import random 
def function1(): 
    print("Hello") 
def function2(): 
    print("Goodbye") 
random_function = random.choice([function1, function2]) 
# call random function 
random_function() 
3

的幾點:

  • random.choice('1 2')做出選擇,但不會用它做任何事情(如綁定它變成一個變量) - 它立即丟失,你永遠不會知道它是什麼。

  • 使用random.choice('12')否則空間也是可能的選擇之一。

  • random.choice是函數的只是名字:你不是要求它在你的if聲明,只是相對於一個字符串(這將是False什麼都不會被打印)。

的代碼可能會更好地工作如下:

import random 

number = random.choice('12') # either '1' or '2' is chosen and bound 
          # to the variable name "number" 
if number == "1": 
    print("Hello") 

if number == "2": 
    print("Goodbye")