16
나는 다음과 같은 코드 'test'
가 임의의 파일입니다나쁜 파일 기술자 오류
f = file('test','rb')
fout = file('test.out','wb')
for i in range(10):
a = f.read(1)
fout.write(a)
f.close()
f = fout
f.seek(4)
print f.read(4)
을 실행하려고하면 내가 얻을 : 그러나 경우
Traceback (most recent call last):
File "testbad.py", line 12, in <module>
print f.read(4)
IOError: [Errno 9] Bad file descriptor
, 나는이를 사용하는 바로 FOUT 라인을 변경 임시 파일 :
import tempfile
f = file('test','rb')
fout = tempfile.NamedTemporaryFile()
for i in range(10):
a = f.read(1)
fout.write(a)
f.close()
f = fout
f.seek(4)
print f.read(4)
오류가 없습니다. 아무도 이것이 왜 있는지 압니까? 첫 번째 사례가 효과가있을 것이라고 예상 했었지만 잘못된 행동을해야합니다.
미리 도움을 청하십시오!
읽기 및 쓰기 모두를위한 파일 https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files – JonoCoetzee
@JonoCoetzee 둘 다 똑같이 작동하는 것으로 보입니다.하지만 더 좋게 편집했습니다. 문서와 정렬. 감사. – cobbal