python-3.x - 如何在python中将大型二进制文件转换为pickle字典?
问题描述
我正在尝试将包含具有 300 个维度向量的阿拉伯语单词的大型二进制文件转换为泡菜字典
到目前为止我写的是:
import pickle
ArabicDict = {}
with open('cc.ar.300.bin', encoding='utf-8') as lex:
for token in lex:
for line in lex.readlines():
data = line.split()
ArabicDict[data[0]] = float(data[1])
pickle.dump(ArabicDict,open("ArabicDictionary.p","wb"))
我得到的错误是:
Traceback (most recent call last):
File "E:\Dataset", line 4, in <module>
for token in lex:
File "E:\lib\codecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xba in position 0: invalid start byte
解决方案
推荐阅读
- gitlab - 我们可以使用阶段名称而不是作业名称来使作业依赖于 .gitlab-ci.yml 文件中的另一个作业吗?
- flutter - 哪个包实现了与 firebase_admob 一起使用的 RequestConfiguration?
- python - _mean() 为参数 'axis' 获得了多个值
- aws-lambda - amazon lambda 暴露内部服务器错误
- python - 当我打开 anaconda 提示时,它显示下面提到的错误。如何解决这个问题?
- python - 来自另一个数据帧中的一个数据帧的单元格值的引用 - 获取 NaN
- react-native - 无法解决模块 react-native-pager-view React Native
- spring-boot - 接口函数在控制器类中调用时抛出错误
- matplotlib - Matplotlib 绘图没有输出 jupyter-lab
- gitlab - gitlab 12.9 中存储库的 Migratiob 路径是什么。到 gitlab 14.2?