繁体   English   中英

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

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

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

现在,即使使用à或ö等带重音的字母,通常也可以正常工作,但不适用于希腊或希伯来字符。 然后它什么也没写。

如果我从IDLE运行Python脚本,则任何类型的文本都会写入文件,并且在Shell窗口中不会出现错误。

这是我的测试代码: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"

我究竟做错了什么?

在此先感谢,Angela

您正在做太多工作-无需对数据进行编码,因为数据已经在您的第一条注释行中指定为UTF-8。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM