我无法弄清楚为什么我无法使用以下代码打印到终端。
#!/usr/bin/env python3
import sys
def main():
sys.stdout.write("Hello")
我正在从终端运行程序,进入找到python文件的目录,使文件可执行并运行
./filename
终端没有打印任何内容,只是转到换行符。如果不使用sys.stdout.write(“string”),如何打印到终端?
答案 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")