解决python3读取Python2存储的pickle文件问题

yipeiwu_com7年前Python基础

我在使用python3.5处理一个序列化文件xxx.pk,不过这个.pk文件是我在python2.7里面存储的,当我用python3读取的时候就会报如下的错误。

import pickle
picklefile=open('2ohsumed_wmd_d.pk','rb')
data=pickle.load(picklefile)
 
print (data)

UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 11: ordinal not in range(128)

解决办法:

import pickle
picklefile=open('2ohsumed_wmd_d.pk','rb')
data=pickle.load(picklefile,encoding='iso-8859-1')
 
print (data)

以上这篇解决python3读取Python2存储的pickle文件问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python提取照片坐标信息的实例代码

python提取照片坐标信息的代码如下所示: from PIL import Image from PIL.ExifTags import TAGS import os output...

pycharm新建一个python工程步骤

pycharm新建一个python工程步骤

小编最近由于工作原因要用到python,一门新的知识需要接触,对于我来说难度还是很大的。 python工程目录结构 每次创建一个python工程 PyCharm会创建如下目录 创建时会把...

django将图片上传数据库后在前端显式的方法

1、使用ImageField先安装pillow模块 pip install pillow 2、在app的models中设置 class Image(models.Model):...

python pdb调试方法分享

复制代码 代码如下:import pdbdef pdb_test(arg):    for i in range(arg):  &nbs...

Windows上使用virtualenv搭建Python+Flask开发环境

关于virtualenv: VirtualEnv用于在一台机器上创建多个独立的Python虚拟运行环境,多个Python环境相互独立,互不影响,它能够: 1.在没有权限的情况下安装新套件...