[PYTHON] ValueError : 닫힌 파일에 대한 I / O 작업
PYTHONValueError : 닫힌 파일에 대한 I / O 작업
import csv
with open('v.csv', 'w') as csvfile:
cwriter = csv.writer(csvfile, delimiter=' ', quotechar='|', quoting=csv.QUOTE_MINIMAL)
for w, c in p.iteritems():
cwriter.writerow(w + c)
여기에서 p는 사전이고 w와 c는 모두 문자열입니다.
파일에 쓸 때 오류가보고됩니다.
ValueError : I/O operation on closed file.
도와주세요, 저는 파이썬을 처음 접했습니다. Python 2.7.3을 사용하고 있습니다. 미리 감사드립니다.
해결법
-
==============================
1.들여 쓰기 올바르게; for 문은 블록 내부에 있어야합니다.
들여 쓰기 올바르게; for 문은 블록 내부에 있어야합니다.
import csv with open('v.csv', 'w') as csvfile: cwriter = csv.writer(csvfile, delimiter=' ', quotechar='|', quoting=csv.QUOTE_MINIMAL) for w, c in p.iteritems(): cwriter.writerow(w + c)
with 블록 밖에서 파일이 닫힙니다.
>>> with open('/tmp/1', 'w') as f: ... print f.closed ... False >>> print f.closed True
-
==============================
2.같은 오류는 탭 + 공백을 혼합하여 올릴 수 있습니다.
같은 오류는 탭 + 공백을 혼합하여 올릴 수 있습니다.
with open('/foo', 'w') as f: (spaces OR tab) print f <-- success (spaces AND tab) print f <-- fail
from https://stackoverflow.com/questions/18952716/valueerror-i-o-operation-on-closed-file by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 정확히 PYTHONPATH에 무엇을 설정해야합니까? (0) | 2018.10.18 |
---|---|
[PYTHON] 파이썬의 로깅 형식이 메시지 로그 수준에 따라 수정 될 수 있습니까? (0) | 2018.10.18 |
[PYTHON] 파이썬에서 정수가 불변 인 이유는 무엇입니까? [복제] (0) | 2018.10.18 |
[PYTHON] 파이썬 로거로 하여금 로그 파일 외에도 모든 메시지를 표준 출력으로 출력하도록합니다. (0) | 2018.10.18 |
[PYTHON] 플로팅을 위해 numpy로 2D 매트릭스에 CSV로드 (0) | 2018.10.18 |