【问题标题】:Python main function [duplicate]Python主函数[重复]
【发布时间】:2013-05-13 15:25:32
【问题描述】:

我在python中遇到了一行:

def somefunc:
    [...]

if __name__ == '__main__':
    somefunc

我不明白“if __name ...”的作用。

假设我们有:

if __name__ == '__main__': main()

#this code will find main

那么这是否类似于 C/C++ 中的 main() 函数,它在任何其他函数之前执行?

【问题讨论】:

标签: python main


【解决方案1】:

如果您直接执行脚本而不导入它,__name__ 将等于__main__。但是如果你导入这个文件,__name__ 将等于导入它的模块的名称。 此条件可确保您从该文件执行代码。

【讨论】:

    【解决方案2】:

    您可以将其视为 C 中的 main() 或 perl 中的 BEGIN { } 块。

    当你使用 python file1.py 运行代码时。

    file1.py中的__name__等于'__main__',但在file1.py导入的其他文件中,变量是别的东西。

    【讨论】:

      猜你喜欢
      • 2016-06-08
      • 2011-04-18
      • 1970-01-01
      • 2014-11-21
      • 2017-11-15
      • 2021-08-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多