Python3:EOFError: Ran out of input
使用pickle.load(f)載入pickle檔案時,報錯:EOFError: Ran out of input.
可能原因:檔案為空。
解決辦法:載入非空檔案。
其他解決辦法:
1、載入前判斷檔案是否為空
import os
scores = {} # scores is an empty dict already
if os.path.getsize(target) > 0:
with open(target, "rb") as f:
unpickler = pickle.Unpickler(f)
# if file is not empty scores will be equal
# to the value unpickled
scores = unpickler.load()
2、捕獲異常
open(target, 'a').close()
scores = {};
try:
with open(target, "rb") as file:
unpickler = pickle.Unpickler(file);
scores = unpickler.load();
if not isinstance(scores, dict):
scores = {};
except EOFError:
return {}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2459/viewspace-2809964/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- POI2012RAN-Rendezvous
- linux 中的 nohup 命令(設定後臺程式): nohup: ignoring input and appending output to ‘nohup.out’LinuxAPP
- 為什麼需要改變RAN的架構?架構
- Python -- raw_input() and input() -- ACMPythonACM
- Kotlin 1.2.50 is out!Kotlin
- OOM(Out Of Memory)OOM
- input
- SQL not exist out joinSQL
- torch--drop out
- Resource is out of sync with the file system
- 塊清除(block clean out)BloC
- 【PAT】1006 Sign In and Sign Out
- Tape-out Checklist FormORM
- B. Two Out of Three
- ABAP 辨析ON INPUT|REQUEST|CHAIN-INPUT|CHAIN-REQUESTAI
- JavaScript input 事件JavaScript事件
- HTML input rangeHTML
- 再不用ContraintLayout就out啦AI
- Eclipse:Resource is out of sync with the file systemEclipse
- 好書推薦《Out of the Maze》
- Look what I found out.
- PTA-1006—— Sign In and Sign Out
- (轉貼)Out of Memory: Killed process
- OOM(Out Of Memory)是什麼?OOM
- sky-take-out chapter 1APT
- Black Out for mac (影像模糊工具)Mac
- Python2 中 input() 和 raw_input() 的區別Python
- input捕捉Enter鍵
- HTML input date calendarHTML
- HTML input url域HTML
- HTML input 元素概述HTML
- div實現input
- angular input和outputAngular
- 3-input LUT
- HTML 25 - Input AttributesHTML
- adb shell input keyevent
- react input[type='number']React
- input type="file"使用