在大多数其他编程语言中,您可以使用零参数或两个参数:

int main(char *argv[],int argc)

表示传递给参数的参数.但是,在Python中,这些是通过sys模块访问的:

import sys

def main():

print(sys.argv,len(sys.argv))

但是你可以扩展它,这样你就可以将argv和argc传递给你的python函数,类似于其他语言:

import sys

def main(argv,arc):

print(argv,arc)

if __name__ == '__main__':

main(sys.argv,len(sys.argv))

但是现在让我们忘记argv / argc – 你为什么要把东西传递给main.你在main之外创建一些东西,并希望将它传递给main.这可能发生在两个实例中:

>您从其他功能多次调用main.

>您已经在main之外创建了要传递的变量.

点数1绝对是不好的做法. main应该是唯一的,并且只在程序开始时调用一次.如果你需要多次调用它,那么main中的代码不属于main.拆分它.

点数2可能看起来很有意义,但是你在实践中这样做:

def main(a,b):

print(a,b)

if __name__ == '__main__':

x = 4

y = 5

main(x,y)

但那么不是x和y全局变量?好的做法会假设它们位于文件的顶部(以及其他多个属性 – 它们是常量等),并且您不需要将它们作为参数传递.