【发布时间】:2017-04-12 01:18:54
【问题描述】:
我有一个工作例程(在一些有用的人在this 线程中给了我一些重要建议之后)从 CSV 文件创建模型实例。到目前为止,我一直在使用 Python 2.7,并确保任何地方都没有出现特殊字符。目前我需要迁移到 Unicode。我加了
# -*- coding: utf-8 -*-
在我的文件顶部,一切运行良好(我可以在我的代码和 cmets 中使用特殊字符),除了 CSV 阅读器例程。即shell反对这部分:
dataReader = csv.reader(open(filename), delimiter=';', quotechar='"')
以前用过,用
TypeError: "delimiter" must be string, not unicode
在阅读了一些较老的问题后,我切换到了
dataReader = csv.reader(open(filename), delimiter=str(u';'), quotechar=str(u'"'))
强制分隔符是一个字符串这一事实,但我得到了完全相同的错误。我做错了什么?
【问题讨论】:
-
试用:
delimiter=str(u';').encode('utf-8') -
它工作正常,非常感谢。你能告诉我我应该如何发现它吗? [请发布“答案”,我会接受]
-
你没有迁移到 Python3.x 吗?
-
没有。我应该是的。 :-(