我是Python脚本的新手。我希望在我的代码编写方面有点专业。基本上,我有一个功能上的脚本,我想添加新的功能。
我的代码看起来有点像:
const declaration
CONST1 = ....
CONST2 = ....
CONST3 = ....
CONST4 = ....
CONST5 = ....
CONST6 = ....
CONST7 = ....
function declaration
def f1:
....
def f2:
....
def f3:
....
def f5:
....
def f7:
....
def f8:
....
def f0:
....
first part
logic
logic
logic
logic
logic
logic
logic
logic
second part
.......
.......
我想在此处添加新功能,以便当脚本以某些参数运行时,第一部分或第二部分依赖于参数运行。
我知道我可以使用if ... else
来做这件事,但想知道是否有更专业的方法来做到这一点。这样代码就更易于维护并且易于添加。你能给我一些建议吗?
答案 0 :(得分:1)
在这种情况下,您应该使用dictionary
例如:
CONST1 = 'CONST1'
CONST2 = 'CONST2'
def f1():
return 'Hello from f1 function'
def f2():
return "Hello from f2 function"
my_data = {
'CONST1': f1,
'CONST2': f2,
}
def run(key):
# If there is no key, just return message
# Or use try/catch
if key not in my_data.keys():
return 'Oops, I can\'t find the key'
# Here we get a value via key, and call function via parentheses
return my_data[key]()
print(run('CONST1'))
答案 1 :(得分:0)
您可以使用Python Dictionary的get方法。
def f(x):
return {
'a': 1,
'b': 2,
}.get(x, 9) # 9 is default if x not found
或
options = {
0 : First,
1 : Second,
}
options[num]()