当我仅使用脚本名称在Windows上运行Python脚本时,无法重定向输出

发布于 2021-01-29 19:34:21

它在Windows 7(64位),带有Win32 Extensions for Python的Python 2.6上运行。

我有一个简单的脚本,仅打印“ hello world”。我可以用启动它python hello.py。在这种情况下,我可以将输出重定向到文件。但是,如果我仅hello.py通过在命令行上键入并重定向输出来运行它,就会出现异常。

C:> python hello.py
hello world

C:> python hello.py >output

C:> type output
hello world

C:> hello.py
hello world

C:> hello.py >output
close failed in file object destructor:
Error in sys.excepthook:

Original exception was:

我想我是在升级到Windows 7后首先得到此错误的。我记得它应该在XP中工作。我见过有人在谈论这个错误python-Bugs-1012692 |
无法通过管道将输入传递到python程序
。但这是很久以前的事了。它没有提及任何解决方案。

有人经历过吗?有人可以帮忙吗?

关注者
0
被浏览
88
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    你在问这个吗?

    Windows:在命令行中使用文件类型关联(例如,启动“ script.py”而不是“ python
    script.py”)执行Python脚本时,除非您设置了特定的注册表项,否则重定向可能不起作用。如果从文件关联开始,请参阅知识库文章STDIN
    / STDOUT重定向可能不起作用

    它在Python自述文件中。也许此修补程序正是您想要的。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看