Python 从标准输出写入文件,给出未知的单词格式

标签 python stdout sys

我有一个 Python 文件,它对文本文件中的单词进行一些处理并将它们打印到标准输出。当它打印到标准输出时,格式为 ASCII。但是,当我尝试将其写入这样的文件时: python Stem.py > 输出.txt

output.txt 文件仅包含如下所示的字符:

^@c^@r^@a^@n^@f^@i^@e^@l^@d^@0^@2^@8^@1ptblustr^@^@^@.^@u^@s^@e^

我该如何解决这个问题?

最佳答案

看看这篇文章..“Python 在写入控制台时设置 stdout 的编码,但在写入文件时则不设置。” Redirecting python's stdout to the file fails with UnicodeEncodeError

尽管你说输出是ascii,但这可能是你问题的根源。你使用什么版本的Python? (Python3 中的字符串是 unicode)。发布一些代码可能会有所帮助:)

关于Python 从标准输出写入文件,给出未知的单词格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21867824/

相关文章:

python - 使用 numpy.where 防止越界

Python - 在对齐的列中打印 CSV 字符串列表

python-3.x - 如何使用 Sys 和 Subprocess 模块以及 Linux Bash 更改部分文件名

python - 从 python spawn 子进程接收连续输出不起作用

c++ - 如何重定向 stdout 和 stderr 流(多平台)?

python - 如果您的 sys.path 使用相对目录,python 会在哪里查找?

python - 如何从不是包的自定义存储库添加模块? Python

python - 验证 Tkinter.Text 小部件?

python - 为什么提早返回比其他方法慢?

python - Numpy 聚合平均值