Python 从批处理文件启动时,脚本不会将希腊字符写入文本文件

Python script doesn't write Greek characters to text file when started from batch file

我有一个 运行 是 Python 脚本的批处理文件。 Python 脚本将文本写入文本文件。

现在,这通常工作正常,即使是重音字母,如 à 或 ö,但在应该写希腊语或希伯来语字符时却不行。然后就什么都不写了。

如果我 运行 来自 IDLE 的 Python 脚本,任何类型的文本都会写入文件并且 Shell window.

这是我的测试代码: Python:

# -*- coding: utf-8 -*-
import codecs
akasi='test' + unicode('aergשריש','utf-8')
print akasi
text_file = codecs.open('Temp.txt', 'a', encoding='utf-8')
text_file.write(akasi)
text_file.close()

批处理文件

@Echo Off
cd /D C:
start /min /wait python "C:\Python27\Scripts\Temp03_27_310.py"

我做错了什么?

提前致谢, 安吉拉

您做的工作太多了 -- 没有必要对您的数据进行编码,因为它已经按照您的第一个评论行中指定的 UTF-8 编码。

# -*- coding: utf-8 -*-
import codecs
akasi='test aergשריש'
print akasi
with open('temp.txt', 'wb') as fh:
    fh.write(akasi)