python – 在if __name__ ==’__ main__’:statement下编写大量代码是很常见的

我目前的编码风格就像

import xxx

def fun1()
def fun2()
...

if __name__ == '__main__': 

    task = sys.argv[1]
    if task =='task1':
        do task1
    elif task == 'task2':
        do task2
    ...

我的问题是代码的一部分

if __name__ == '__main__': 

与上面定义的函数相比,这是非常巨大的,我被告知这不是一个好的编程风格.这是因为我修改了内容并经常在每个任务中进行实验,并且我希望将代码的这些部分与不太可能被修改的函数分开.我想在这里学到更多建议,谢谢!

最佳答案 就像BusyAnt所说的那样,常见的做法是

import xxx

def fun1()
def fun2()
...



def main():
    task = sys.argv[1]
    if task =='task1':
        do task1
    elif task == 'task2':
        do task2
    ...

if __name__ == '__main__':
    main()

这样做的好处是它不会在导入时运行,但是如果愿意的话,main()仍然可以从另一个模块或文件运行.

点赞