【问题标题】:Define Python function and print output in terminal [duplicate]在终端中定义Python函数并打印输出[重复]
【发布时间】:2016-03-18 06:34:39
【问题描述】:
可能是非常基本的问题,但我找不到答案。我创建了一个名为“test.py”的 python 程序。它包含以下代码:
def test():
print 'test'
我想在我的终端 (Mac) 上运行这个程序并在终端上打印“测试”。当我运行程序如下:
python test.py
似乎程序已执行,但未打印“测试”。我怎么做?谢谢。
【问题讨论】:
标签:
python
macos
function
terminal
output
【解决方案1】:
你只是定义了测试函数,你需要调用它。有两种方法:
1.直接调用:
def test():
print 'test'
test()
- 在 main 检查中调用(主要是因为当有人导入您的 test.py 时,它不会调用 test() 函数):
def test():
print 'test'
if __name__ == "__main__":
test()
【解决方案2】:
这是因为当您调用 Python 脚本时实际上并没有执行任何操作。您只需在test.py 中定义一个方法。
您实际上必须在某个地方调用此方法。如果您希望在调用 test.py 时执行代码,则需要将其放在脚本的底部:
if __name__ == '__main__':
test()
根据文档here
【解决方案3】:
您需要调用该函数。像这样的:
if __name__ == "__main__":
test()
【解决方案4】:
您需要调用该函数,获取输出的最简单方法是调用它。在函数定义之前或之后的某处添加这一行。
test()
但是,更好的做法是将其放在 if 块中 (reason)
if __name__ == '__main__':
test()
【解决方案5】:
-
if __name__ == "__main__" 是当脚本从(比如)命令行使用 python python test.py 之类的命令运行时运行的部分。
2.可以直接调用:
def test():
print 'test'
test()