是否有Python代码的名称不在函数中?

时间:2017-06-13 11:23:52

标签: python

标题几乎说出来了。

我想知道我应该把代码放在Python文件中,而不是任何函数。

对于某些上下文 - 在我关注的特定模块中,有一些函数已经定义了定义,但是每当导入模块时,也会在最后执行一些代码。这段代码叫什么?

2 个答案:

答案 0 :(得分:2)

如果您希望仅在直接执行时触发代码,请使用if __name__ == '__main__'条件:

  

__name__是顶级代码执行的范围的名称。   从标准读取时,模块的__name__设置为'__main__'   输入,脚本或交互式提示。

     

模块可以发现它是否在主范围内运行   通过检查自己的名称,它允许一个常见的习惯用法   当它作为脚本运行时,有条件地执行模块中的代码   使用python -m但不是在导入时。

if __name__ == "__main__":
    # execute only if run as a script
    main()

答案 1 :(得分:2)

此代码通常称为

global scope codemodule level codetop-level code

但它没有正确的命名约定,但程序员会理解你在使用其中任何一个时的意思。