运行脚本时不运行main()函数

Tim*_*Tim 4 python

#! /usr/bin/python

def main():
    print("boo")
Run Code Online (Sandbox Code Playgroud)

当我尝试在Python 3.3中运行它时,此代码不执行任何操作.没有错误或任何事情.什么是错的

[tim@tim-arch ~]$ gvim script
[tim@tim-arch ~]$ sudo chmod 775 script
[tim@tim-arch ~]$ ./script
[tim@tim-arch ~]$ 
Run Code Online (Sandbox Code Playgroud)

Vol*_*ity 29

你仍然需要调用该函数.

def main():  # declaring a function just declares it - the code doesn't run
    print("boo")

main()  # here we call the function
Run Code Online (Sandbox Code Playgroud)


Tux*_*ude 14

我假设你想要做的是从命令行执行脚本时调用print函数.

在python中,您可以确定包含一段代码的脚本是否与最初通过检查__name__变量而启动的脚本相同__main__.

#! /usr/bin/python

if __name__ == '__main__':
    print("boo")
Run Code Online (Sandbox Code Playgroud)

只需这些代码行:

def main():
    print("boo")
Run Code Online (Sandbox Code Playgroud)

你正在定义一个函数而不是实际调用它.要调用该函数main(),您需要像这样调用它:

main()
Run Code Online (Sandbox Code Playgroud)


Roh*_*han 5

您需要调用该函数。将脚本更新为:

#! /usr/bin/python

def main():
    print("boo")

# Call it
main()
Run Code Online (Sandbox Code Playgroud)