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

标签 python python-3.x ubuntu scripting

<分区>

我不明白为什么我不能使用下面的代码打印到终端。

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

我通过移动到找到 python 文件的目录来从终端运行程序,使文件可执行并运行

./filename

终端什么都不打印,只是换行。如果不使用 sys.stdout.write("string"),我该如何打印到终端?

最佳答案

默认情况下,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 函数,它默认写入标准输出。

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

关于python - 为什么我不能用我的 python 脚本打印到终端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40299126/

上一篇:laravel - 在 Ubuntu 16.04 中创建虚拟主机

下一篇:sockets - 非 root 用户的 ping 如何在 Linux 发行版上实现?

相关文章:

python - 如何使用 opencv 和 python 分割图像内属于生物样本的相似外观区域(颜色方面)?

python-3.x - 自动换行数据标签python-pptx

python - 更改 mininet 主机中的主机名

bash - 是否可以使用 bash 在脚本中直接执行命令?

python - 从 sqlite3 填充组合框可编辑用户名和行编辑密码

Python:Mechanize 无法将 Cookie 发送到第二个 URL

Python 循环一直错误返回,我该如何修改?

Python:使用梯形规则快速计算平均值

python - 我在输出中得到的模式末尾有额外的星号,这是不需要的

ruby-on-rails - 使用 Capistrano 部署,未读取 JAVA_HOME