A Python3.x hibát ad TypeError: bájtszerű objektumra van szükség, nem 'str'

Python3 X Gives An Error Typeerror



Python3.x hiba TypeError: bájtszerű objektum szükséges, nem „str”

A Python3.x hibát ad a pickle.load () meghívásakor



ages = pickle.load( open('practice_outliers_ages.pkl', 'r') ) TypeError: a bytes-like object is required, not 'str'

A Python 3 és a Python 2 közötti karakterlánc-kompatibilitási problémák miatt, mivel az adatfájlok a Python 2 alatt vannak sorosítva, a Python 3-zal való olvasás során az „str” -t „bájtokká” kell konvertálni.



#python2 to python3 class StrToBytes: def __init__(self, fileobj): self.fileobj = fileobj def read(self, size): return self.fileobj.read(size).encode() def readline(self, size=-1): return self.fileobj.readline(size).encode() ages = pickle.load( StrToBytes(open('practice_outliers_ages.pkl', 'r')))