处理 python 中的 unicode 字符串
Process unicode strings in python
我正在使用基于英语维基百科的 fasttext 预训练模型。它按预期工作...
https://github.com/shantanuo/pandas_examples/blob/master/nlp/fasttext_english.ipynb
但是当我用其他语言尝试相同的代码时,我收到了一个错误,如本页所示...
https://github.com/shantanuo/pandas_examples/blob/master/nlp/fasttext_marathi.ipynb
错误与unicode相关:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 15: invalid start byte
我尝试使用原始二进制选项打开文件。我在 load.py 文件中更改了函数 load_words_raw:
with open(file_path, 'rb') as f:
现在我得到一个不同的错误:
ValueError: could not convert string to float: b'\x00l\x02'
我不知道该如何处理。
试试这个:
data : str
with open('crawl-D.txt' ,'r', encoding='utf8') as file:
data = file.read()
str
将包含整个文件 string
.
用 float()
.
解析 float
字节 0x80 在位置 15。文件有可能以 UTF-16 编码。
试试这个:
with open(path, encoding='utf-16') as f:
// your logic
您应该将笔记本文件的第二行更改为:
#!wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.mr.300.vec.gz
因此指向 vec 文件,而不是 bin 文件:
#!wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.mr.300.bin.gz
我正在使用基于英语维基百科的 fasttext 预训练模型。它按预期工作...
https://github.com/shantanuo/pandas_examples/blob/master/nlp/fasttext_english.ipynb
但是当我用其他语言尝试相同的代码时,我收到了一个错误,如本页所示...
https://github.com/shantanuo/pandas_examples/blob/master/nlp/fasttext_marathi.ipynb
错误与unicode相关:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 15: invalid start byte
我尝试使用原始二进制选项打开文件。我在 load.py 文件中更改了函数 load_words_raw:
with open(file_path, 'rb') as f:
现在我得到一个不同的错误:
ValueError: could not convert string to float: b'\x00l\x02'
我不知道该如何处理。
试试这个:
data : str
with open('crawl-D.txt' ,'r', encoding='utf8') as file:
data = file.read()
str
将包含整个文件 string
.
用 float()
.
float
字节 0x80 在位置 15。文件有可能以 UTF-16 编码。 试试这个:
with open(path, encoding='utf-16') as f:
// your logic
您应该将笔记本文件的第二行更改为:
#!wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.mr.300.vec.gz
因此指向 vec 文件,而不是 bin 文件:
#!wget https://dl.fbaipublicfiles.com/fasttext/vectors-crawl/cc.mr.300.bin.gz