Lev*_*ter 3 scripting ubuntu python-3.x
我无法弄清楚为什么我不能使用以下代码打印到终端.
#!/usr/bin/env python3
import sys
def main():
sys.stdout.write("Hello")
Run Code Online (Sandbox Code Playgroud)
我正在从终端运行程序,进入找到python文件的目录,使文件可执行并运行
./filename
Run Code Online (Sandbox Code Playgroud)
终端打印什么都没有,只是去换行.如果不使用sys.stdout.write("string"),如何打印到终端?
Mun*_*nir 10
首先,请在Stackoverflow上询问编程问题,除非它们特定于Unix/Linux shell编程.
main
默认情况下,Python不执行(或任何其他)函数.
你可以这样做:
#!/usr/bin/env python3
import sys
sys.stdout.write("Hello")
Run Code Online (Sandbox Code Playgroud)
或者如果要保留该功能,但在运行脚本时调用它:
#!/usr/bin/env python3
import sys
def main():
sys.stdout.write("Hello")
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
如果要将脚本导入其他文件,则应使用第二种方法,否则使用第一种方法.
此外,您可以使用Python print
函数,默认情况下写入stdout.
#!/usr/bin/env python3
print("Hello")
Run Code Online (Sandbox Code Playgroud)