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

4 投票
5 回答
16230 浏览
提问于 2025-04-17 19:18

考虑一下:

#! /usr/bin/python

def main():
    print("boo")

这段代码在我尝试在Python 3.3中运行时什么也不做。没有错误提示,也没有其他任何反应。

这是什么情况?

gvim script
chmod 775 script
./script

5 个回答

5

你需要调用那个函数。把脚本更新成:

#! /usr/bin/python

def main():
    print("boo")

# Call it
main()
14

我猜你是想在从命令行执行脚本时调用 print 函数。

在Python中,你可以通过检查 __name__ 变量是否等于 __main__ 来判断包含某段代码的脚本是否是最开始被启动的那个脚本。

#! /usr/bin/python

if __name__ == '__main__':
    print("boo")

仅用这几行代码:

def main():
    print("boo")

你只是定义了一个函数,并没有真正去调用它。如果想要调用这个函数 main(),你需要这样写:

main()
30

你还是需要调用这个函数。

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

main()  # here we call the function

撰写回答