我正在尝试用python加载一个文件。如果你运行下面的代码,加载一个只包含英语单词的文件,它就能正常加载。
Listado.txt是一个西班牙语言文件,其中包含以下词语:abacá, abadí, abadía, abajeño, abaniquería
西班牙语包含重音字母(如é)或特殊字符(diacritics),问题就出在这里,当我试图把这个文件加载到Python中时,它就抱怨了。我希望能够对列表进行规范化处理,或者删除重音字符并加载列表。
我曾试着用.NET的方式来规范化。
unicodedata.normalize('NFD', line).encode('ascii', 'ignore')
我得到了以下错误。
TypeError: normalize()参数2必须是str,而不是list
到目前为止的代码:
import random
import string
import unicodedata
#WORDLIST_FILENAME = "words_alpha.txt"
WORDLIST_FILENAME = "listado.txt"
def loadWords():
print("Loading word list from file...")
# inFile: file
inFile = open(WORDLIST_FILENAME, 'r')
wordlist =[]
for line in inFile:
line = line.split()
wordlist.extend(line)
# unicodedata.normalize('NFD', line).encode('ascii', 'ignore')
print(" "), len(wordlist), ("words loaded.")
return wordlist