怎么用python3读取python2的泡菜数据方式

  介绍

这篇文章主要介绍了怎么用python3读取python2的泡菜数据方式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

python有哪些常用库

python常用的库:1. requesuts; 2. scrapy; 3.枕头;4.扭曲;5. numpy; 6. matplotlib; 7. pygama; 8。ipyhton等。

<强>问题一: TypeError: bytes-like对象是必需的,不是& # 39;str # 39;

解决:该问题属于Python3和Python2的字符串兼容问题,数据文件是在Python2下序列化的,使用Python3读取时,需要将“str # 39;转化为& # 39;字节# 39;。

picklefile=开放(& # 39;XXX.pkl& # 39; & # 39; " # 39;)   ,   class  StrToBytes:   def 才能;__init__(自我,,fileobj):   ,,,self.fileobj =fileobj   def 才能读(自我,,大小):   ,,,return  self.fileobj.read(大小).encode ()   def 才能;readline(自我,,大?1):   ,,,return  self.fileobj.readline(大小).encode ()   ,   data=https://www.yisu.com/zixun/pickle.load (StrToBytes (picklefile))

<强>问题二: UnicodeDecodeError: & # 39; ascii # 39;编解码器停下来# 39;t解码字节0 x90位置44:序数不在范围(128)

解决:加上编码编码方式

pickle.load (StrToBytes (data_file),编码=& # 39;iso - 8859 - 1 - & # 39;)

附上完整的读取代码:

import 困境   class  StrToBytes:   def 才能;__init__(自我,,fileobj):   ,,,self.fileobj =fileobj   def 才能读(自我,,大小):   ,,,return  self.fileobj.read(大小).encode ()   def 才能;readline(自我,,大?1):   ,,,return  self.fileobj.readline(大小).encode ()   ,   时间=read 开放(& # 39;XXX.pkl& # 39;,, & # 39; " # 39;)   时间=data  pickle.load (StrToBytes(读),编码=& # 39;iso - 8859 - 1 - & # 39;)   ,,   打印(数据)

感谢你能够认真阅读完这篇文章,希望小编分享的“怎么用python3读取python2的泡菜数据方式”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

怎么用python3读取python2的泡菜数据方式