为什么我不能用我的python脚本打印到终端?

时间:2016-10-27 23:45:18

标签: ubuntu scripting python-3.x

我无法弄清楚为什么我无法使用以下代码打印到终端。

#!/usr/bin/env python3
import sys
def main():
    sys.stdout.write("Hello")

我正在从终端运行程序,进入找到python文件的目录,使文件可执行并运行

./filename

终端没有打印任何内容,只是转到换行符。如果不使用sys.stdout.write(“string”),如何打印到终端?

1 个答案:

答案 0 :(得分:9)

首先,请在Stackoverflow上询问编程问题,除非它们特定于Unix / Linux shell编程。

默认情况下,Python不会执行main(或任何其他)函数 您可以这样做:

#!/usr/bin/env python3
import sys
sys.stdout.write("Hello")

或者如果你想保留这个功能,但是在运行脚本时调用它:

#!/usr/bin/env python3
import sys

def main():
    sys.stdout.write("Hello")

if __name__ == '__main__':
    main()

如果要将脚本导入其他文件,则应使用第二种方法,否则使用第一种方法。

此外,您可以使用Python print函数,默认情况下会写入stdout。

#!/usr/bin/env python3
print("Hello")