我知道这肯定是一个非常基本的问题,然而,我一直在尝试寻找一个简单的答案,但找不到一个。
因此,我的问题是:如何从命令行执行python脚本,以便可以看到打印语句。
例如,假设我有一个文件test.py:
def hello():
print "hello"如果我进入解释器,导入test.py,然后调用test.hello(),一切都会正常工作。但是,我希望能够只运行
python test.py在命令行中,让它向终端输出"hello“。
我该怎么做呢?
谢谢!
更新:是的,对不起,我的脚本实际上更像这样:
def main():
hello()
def hello():
print "hello"我仍然需要调用main(),还是自动调用它?
发布于 2013-03-22 04:05:38
在文件末尾添加:
if __name__ == '__main__':
hello()发布于 2013-03-22 04:06:43
您的print语句包含在函数定义块中。您需要调用该函数才能执行:
def hello():
print "hello"
if __name__ == '__main__':
hello()这基本上是说“如果这个文件是主文件(已从命令行调用),则运行此代码。”
发布于 2013-03-22 04:05:44
你必须让脚本实际调用你的方法。通常,您可以使用if __name__ == "__main__":块来完成此操作。
或者,您可以使用解释器的-c参数来显式地从cli导入和运行您的模块,但这将要求脚本位于您的python路径上,而且这也是一种糟糕的风格,因为您现在已经在Python模块之外执行Python代码。
https://stackoverflow.com/questions/15556967
复制相似问题