我有一个使用def选项的子程序,所以如果我想重复该程序。例如:
def op1():
print ("Something Something")
所以我只是写在程序中:
op1()
使程序运行。
现在我有很多子程序,每个子程序都有不同的def
,所以我可以轻松地运行它们。
例如:
def op1():
def op2():
def op3():
所以我想知道如何在if-else
声明中使用它。
例如:
option = input ("Enter either A, B or C here: ")
if option == A:
def op1():
else:
def op2():
甚至
if option == A:
def op1():
elif:
def op2():
elif:
def op3():
类似的东西,但它不起作用。有人可以帮忙吗? 我也使用较新版本的python,如果这有助于3.5.0。
答案 0 :(得分:2)
您无需有条件地定义函数。
<input type="hidden" name="msg" value="GATEFORUM|OE180187|NA|0.00|NA|NA|NA|INR|NA|R|gateforum|NA|NA|F|AMIT SINGH|9993523486|gis16|NA|NA|NA|NA|http://gis16.gateforum.net/online_enroll/payment_status.php|2482236435">
答案 1 :(得分:1)
您需要首先定义您的函数,但如果您有多个选项,您可以存储对dict中函数的引用,然后根据用户输入的内容进行调用,使用带有默认函数的dict.get
将像您的if / elif else逻辑:
def op1():
return '1'
def op2():
return '2'
def op3():
return "3"
option_fs = {"A": op1, "B": op2}
option = input("Enter either A, B or C here: ").upper()
print(option_fs.get(option, op3)())