Python:UnicodeEncodeError:';ascii';编解码器可以';t编码字符u'\xfc&x27;位置0:序号不在范围(128)->;擅长

Python:UnicodeEncodeError:';ascii';编解码器可以';t编码字符u'\xfc&x27;位置0:序号不在范围(128)->;擅长,python,encoding,export-to-excel,Python,Encoding,Export To Excel,我现在正试图把我的头绕在这个问题上一段时间,但还没有看到任何解决方案,不会让我感到困惑 我得到了一个python脚本,它应该将一个包含单词(德语名称)的数组写入excel文件 cell = [name_1, name_2, name_3] import csv fl = open('company_data.csv', 'w') writer = csv.writer(fl) writer.writerow(['Name_1', 'Name_2', 'Name_3']) fo

我现在正试图把我的头绕在这个问题上一段时间,但还没有看到任何解决方案,不会让我感到困惑

我得到了一个python脚本,它应该将一个包含单词(德语名称)的数组写入excel文件

cell = [name_1, name_2, name_3]   

import csv
 fl = open('company_data.csv', 'w')

 writer = csv.writer(fl)
 writer.writerow(['Name_1', 'Name_2', 'Name_3']) 
 for values in cell:
     writer.writerow(values)

 fl.close() 
出现的错误是 ,第135行,在 writer.writerow(值) UnicodeEncodeError:“ascii”编解码器无法对位置0中的字符u'\xfc'进行编码:序号不在范围内(128) [在1.2秒内完成,退出代码为1]

这些名字包括德语字符ü、ä、ö等


我该如何解决这个问题

我认为您必须打开文件并指定要编写unicode。Aussming您想要utf-8:

import codecs
fl = codecs.open("company_data.csv", "w", "utf-8")

谢谢你的回复。但是,我仍然收到消息:UnicodeEncodeError:“ascii”编解码器无法对位置0:ordinal不在范围(128)中的字符u'\xfc'进行编码。这些信息有助于找到解决方案吗?如果有,解决方案是什么样子的?将近一年了,但是您是否尝试过显式地使用
python3
而不是仅使用
python
?有同样的问题,有一个
#/usr/bin/env python
shebang,带
#/usr/bin/env python3
一切正常。如果您不在*nix上,请使用
python3 myfile.py
而不是
python myfile.py
:)