如何在python中使用pickle在磁盘上存储解析的变量。

2024-10-03 11:22:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文件叫co2a0000364.rd.002

enter code here

  #   co2a0000364.rd

  #   120 trials, 64 chans, 416 samples 368 post_stim samples

  #   3.906000 msecs uV

#S1 obj,试用0 #FP1通道0 0英尺1 0-8.921 第1页-8.433

我想使用库“pickle”在磁盘上存储解析的变量

  >>>   import pickle

  >>>   import pprint

  >>>   data= open("C:\\Users\\sonia\co2a0000364.rd.002")

  >>>   pprint.pprint(data)
<_io.TextIOWrapper name='C:\\Users\\sonia\\co2a0000364.rd.002' mode='r'    encoding='cp1252'>
  >>>   data_string = pickle.dumps(data)
   Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   TypeError: cannot serialize '_io.TextIOWrapper' object

Tags: 文件ioimportdataherecoderdusers
1条回答
网友
1楼 · 发布于 2024-10-03 11:22:58

您正在尝试pickle文件句柄,而不是文件内容。请尝试对代码进行以下更改:

import pickle
import pprint
data= open("C:\\Users\\sonia\co2a0000364.rd.002")
file_contents = data.read()
pprint.pprint(file_contents)
data_string = pickle.dumps(file_contents)

file_contents将保存文件的内容
data_string将保存它的pickle版本

相关问题 更多 >