csv .writerow中的无效字符

时间:2019-06-28 09:52:27

标签: python python-3.x csv exception

我正在使用Python 3.7用lib csv中的构建编写一个.csv文件。 如果输入包含Unicode字符“白色项目符号”,则会发生错误 https://unicode-table.com/en/search/?q=%E2%97%A6

  

代码:

with open(filename, 'w', newline='', encoding='ansi') as csvfile:
            filewriter = csv.writer(csvfile, delimiter=';', quoting=csv.QUOTE_MINIMAL)

filewriter.writerow(['H', debitor, None, customer_name, notes, setup.HQ])

错误: 'mbcs' codec can't encode characters in position 0--1: invalid character

这是一个错误还是我不知道有什么限制?

1 个答案:

答案 0 :(得分:1)

ANSI编码(在this question或在wikipedia page上有此编码)没有字符“ white bullet”,因此根本无法用ANSI编码表示该字符。

您有三个选择:

  1. 将编码更改为支持该特定字符的内容,例如utf-8或其他某种编码。
  2. 跳过/删除该字符。
  3. 用在ANSI编码中有效的其他字符替换该char。