python異常之EOFError: Ran out of input


  • 出現該問題一般是由於你在以寫模式打開文件后未關閉的情況下又去以讀模式操作該文件時報的錯誤
# coding = utf-8
import pickle
#定義一個boy類
class boy():
    def __init__(self,name,age):
        self.name = name
        self.age  = age
        self.gf_dic = {}
#創建實例對象
b = boy('李明',23)
f = open("a.text",'wb')
pickle.dump(b,f)


b1 = pickle.load(open("a.text",'rb'))
print(b1.gf_dic)
b1.gf_dic[1] = {b:'秀秀'}
b1.gf_dic[2] = {b:'麗麗'}
pickle.dump(b1,f)

解決:(分段執行)

 1 # coding = utf-8
 2 import pickle
 3 #定義一個boy類
 4 class boy():
 5     def __init__(self,name,age):
 6         self.name = name
 7         self.age  = age
 8         self.gf_dic = {}
 9 #創建實例對象
10 b = boy('李明',23)
11 # f = open("a.text",'wb')
12 # pickle.dump(b,f)
13 # f.close()
14 print(b.gf_dic)
15 
16 f1 = open("a.text",'rb')
17 b1 = pickle.load(f1)
18 f1.close()
19 print(b1.gf_dic)
20 # b1.gf_dic[1] = {b:'秀秀'}
21 # b1.gf_dic[2] = {b:'麗麗'}
22 # f2 = open("a.text",'wb')
23 # pickle.dump(b1,f2)
24 # f2.close()

結果:

  {}
  {1: {<__main__.boy object at 0x000000000277C7B8>: '秀秀'}, 2: {<__main__.boy object at 0x000000000277C7B8>: '麗麗'}}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM