繁体   English   中英

我怎样才能简化这段代码? 有没有办法将其转换为 for 循环?

[英]how can i simplify this code? is there a way to transform this into a for loop?

我怎样才能简化这段代码? 有没有办法将其转换为 for 循环?
我尝试了一些 for 循环,但没有任何效果或比这更短并且更有效。

这是我要优化的代码:

if selection == 1:
    function1
elif selection == 2:
    function2
elif selection == 3:
    function3
elif selection == 4:
    function4

看起来您想根据选择的值执行不同的 function。 一个不错的方法是,在选择和ZC1C1C425268E68E68E68385D1AB5074C174C17A94F14F之间,将具有值的字典和您要调用的值和您要调用的函数的字典和功能。 例如:

functions = {'1': function1, '2': function2, '3': function3}

然后如果根据选择执行 function:

functions[selection]()

如果字典中不存在密钥,您可以通过添加一些错误处理来稍微改进它

您可以将函数作为对象存储在列表中

[function1, function2, function3, function4][selection - 1]()

但是,这不是真正可读的,所以不推荐。 您不能使用循环,因为您的代码不会重复执行任何操作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM