Python: pickle: 从 pickle 文件中提取字符串对象后没有代码建议
Python: pickle: No code suggestion after extracting string object from pickle file
例如,这是我的代码:
#extract the object from "lastringa.pickle" and save it
extracted = ""
with open("lastringa.pickle","rb") as f:
extracted = pickle.load(f)
其中 "lasting.pickle" 包含带有一些文本的字符串对象。
所以如果我在打开文件之前输入 extracted.
,我就能得到如图所示的代码建议:
但是,在这个操作 extracted = pickle.load(f)
之后,如果我键入 extracted.
,我将不再获得代码建议。
谁能解释一下这是为什么以及如何解决这个问题?
Pickle 将对象作为二进制文件读取和写入。您可以通过使用 rb
选项的 open('lastringa.pickle', 'rb')
命令确认这一点,即 read binary。
您的 IDE 不知道 pickle 预期读取的对象类型,因此它可以建议字符串方法(例如 .split()
、.read()
)
另一方面,在第一张照片中,您的 IDE 知道 expected
是一个字符串,并且知道建议什么。
例如,这是我的代码:
#extract the object from "lastringa.pickle" and save it
extracted = ""
with open("lastringa.pickle","rb") as f:
extracted = pickle.load(f)
其中 "lasting.pickle" 包含带有一些文本的字符串对象。
所以如果我在打开文件之前输入 extracted.
,我就能得到如图所示的代码建议:
但是,在这个操作 extracted = pickle.load(f)
之后,如果我键入 extracted.
,我将不再获得代码建议。
谁能解释一下这是为什么以及如何解决这个问题?
Pickle 将对象作为二进制文件读取和写入。您可以通过使用 rb
选项的 open('lastringa.pickle', 'rb')
命令确认这一点,即 read binary。
您的 IDE 不知道 pickle 预期读取的对象类型,因此它可以建议字符串方法(例如 .split()
、.read()
)
另一方面,在第一张照片中,您的 IDE 知道 expected
是一个字符串,并且知道建议什么。