0
我正在努力在含有unicode字符的土耳其文中查找ngrams。这里是我的代码:在土耳其文中查找ngram与nltk
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import nltk
from nltk import word_tokenize
from nltk.util import ngrams
def find_bigrams():
t = "çağlar boyunca geldik çağlar aktı gitti. çağlar aktı"
token = nltk.word_tokenize(t)
bigrams = ngrams(token,2)
for i in bigrams:
print i
find_bigrams()
输出:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
当我改变这样的文字:
t = "çağlar boyunca geldik çağlar aktı gitti"
输出也改变:
('\xc3\xa7a\xc4\x9flar', 'boyunca')
('boyunca', 'geldik')
('geldik', '\xc3\xa7a\xc4\x9flar')
('\xc3\xa7a\xc4\x9flar', 'akt\xc4\xb1')
('akt\xc4\xb1', 'gitti')
我怎样才能解决这个unicode问题?另一个问题是如何将这些标记转换为字符串(没有')
字符)
它的工作原理与此字符串,但是当我尝试从文本文件导入大字符串我仍然得到的第一个错误 – JayGatsby
我得到这个错误: TypeError:'encoding'是此函数的一个无效关键字参数 – JayGatsby
这一个工作谢谢t = codecs.open('siirclear.txt','r',encoding ='utf-8')。read() – JayGatsby