虽然这是一个常见问题,但我无法找到适合我案例的解决方案。我有数据,这是逗号分隔如下。
['my scientific','data']['is comma-separated','frequency']
我试图使用
删除停用词from nltk.corpus import stopwords
stopword = stopwords.words('english')
mynewtext = [w for w in transposed if w not in stopword]
out_file.writerow(w)
但是它给了我一个错误说' UnicodeWarning:Unicode等同比较无法将两个参数都转换为Unicode - 将它们解释为不相等'。我不确定我犯了什么错误。我希望我的输出在csv文件中像
scientific,data
comma-separated,frequency
另外,我希望它适用于上下两种情况。 casefield不适用于我的Python 2.7版
答案 0 :(得分:3)
我认为您正在将上述代码中的str object
与unicode object
进行比较。
我建议您查看链接Python unicode equal comparison failed
>>> s1 = u'Hello'
>>> s2 = unicode("Hello")
>>> type(s1), type(s2)
(<type 'unicode'>, <type 'unicode'>)
>>> s1==s2
True
>>>
>>> s3='Hello'.decode('utf-8')
>>> type(s3)
<type 'unicode'>
>>> s1==s3
>>>True
答案 1 :(得分:2)
尝试
# -*- coding: utf-8 -*-,
在源代码的标题中。
它告诉Python您保存的源文件是utf-8
。 Python 2 的默认值为ASCII(对于 Python 3 它&#39; s utf-8
)。这只会影响解释器读取文件中字符的方式。