2017-02-12 39 views
-1

這裏是我的代碼:使用返回從一個功能定義至另一個Python

def options(): 
    wanted_float = float(input("Wanted Float: ")) 
    specificity = float(input("How close to float (ex: .001): ")) 
    low_output = float(input("Min Float of Output Skin: ")) 
    high_output = float(input("Max Float of Output Skin: ")) 
    needed_average = ((wanted_float-low_output)/(high_output-low_output)) 
    print("Needed average: ", needed_average) 
    only_lower = input("Only show floats lower than previous? yes/no: ") 
    which = input("Would you like to load floats manually or automatically? (manual/automatic): ") 
    return which 

def mode(which): 
    if (mode == 'manual'): 
     print("Manual") 

    if (mode == 'automatic'): 
     print("automatic") 

def start(): 
    options() 
    mode(which) 

start() 

不過,我不斷收到錯誤。我看了一些處理這個問題的其他答案,但他們似乎並不適用於此。

Wanted Float: .5 
How close to float (ex: .001): .001 
Min Float of Output Skin: 0 
Max Float of Output Skin: 1 
Needed average: 0.5 
Only show floats lower than previous? yes/no: yes 
Would you like to load floats manually or automatically? (manual/automatic): manual 
Traceback (most recent call last): 
    File "C:\Users\.Anderson\Documents\Python\floats\organized.py", line 172, in <module> 
    start() 
    File "C:\Users\.Anderson\Documents\Python\floats\organized.py", line 161, in start 
    mode(which) 
NameError: name 'which' is not defined 

它說行172和161是因爲我在兩者之間有很多的其他代碼,但我只是呼籲在其中所有的代碼目前並

+1

只需執行'mode(options())'。你可能想要閱讀變量和範圍 –

+0

什麼錯誤?請發佈堆棧跟蹤。 –

+1

或'which = options()'。 – jonrsharpe

回答

2

啓動選項和模式的原因問題是你沒有保存options()函數的返回值。你可以像模式(options())或which = options();模式(其中)

相關問題