답변
File mode, 쓰기 및 바이너리. .jpg 파일을 작성 중이므로 잘 보입니다. 당신이 그 JPG 파일을 읽을 생각하면
는하지만 정보가
Windows에서, 모드 에 추가 'B 것은'바이너리 모드로 파일을 엽니 다
더
'rb'
, 그래서 를 사용할 필요가 'rb', 'wb', 및 'r + b'와 같은 모드가 있습니다. Windows상의 파이썬은 텍스트와 바이너리를 구별합니다. 파일; 텍스트 파일의 줄 끝 문자는 데이터를 읽거나 쓸 때 약간 으로 자동 변경됩니다. ASCII 데이터 파일의 경우 파일 데이터의 배후 수정이 적합하지만 JPEG 또는 EXE 파일의 이진 데이터 이 손상됩니다.
파일을 여는 모드입니다. "wb"은 파일 (w)에 쓰고 있고 이진 모드 (b)로 쓰고 있음을 의미합니다. 더에 대한 문서 밖으로
점검 : clicky
wb
파일이 바이너리 모드로 쓰기 위해 열을 나타냅니다.
UNIX 시스템 (Linux, Mac OS X 등)에서 바이너리 모드는 아무 것도하지 않습니다. 다른 파일과 동일한 방법으로 텍스트 파일을 처리합니다. 그러나 Windows에서는 약간 수정 된 줄 끝으로 텍스트 파일이 작성됩니다. 실제로 exe
또는 jpg
파일과 같은 실제 이진 파일을 처리 할 때 심각한 문제가 발생합니다. 따라서 텍스트가 아닌 파일을 열 때 Unix에서도 wb
또는 rb
을 사용해야합니다. 텍스트 파일에만 일반 w
또는 r
을 사용하십시오.
은 참조 : http://docs.python.org/tutorial/inputoutput.html#reading-and-writing-files
은 또한 당신은 file
대신 open
를 사용하는 것이 좋습니다. file
은 Python 2에서 더 이상 사용되지 않으며 (어떤 버전을 찾을 수없는) py3k에서 제거되었습니다. (고마워 Scott)
자세한 내용은 this question을 참조하십시오.
이 답변은 아마도 첫 번째 답변에 대한 의견으로 더 좋을 것입니다. –
'open' 대신'file'을 사용하는 것은 Python 2에서 오랫동안 사용되지 않았습니다. 파이썬 3에서 제거되었습니다. –
@ Scott : 감사합니다. 내 대답을 편집했습니다. @ 브라이언 : 당신 말이 맞아요. 다음 번에 할게요. 고마워요. –
- 1. 이 코드에서 Action을 사용하는 이유는 무엇입니까?
- 2. 이 코드에서 Ajax를 사용하는 방법은 무엇입니까?
- 3. 이 코드에서 잘못된 점은 무엇입니까?
- 4. 파이썬을 사용하는 트위터 친구 찾기
- 5. 파이썬을 사용하는 RDP
- 6. 이 PIL 호출이 파이썬을 왜 호출합니까?
- 7. 파이썬을 사용하여 wifi를 사용하는 방법?
- 8. 파이썬을 사용하는 동아시아 언어 인코딩
- 9. 이 코드에서 실수가 무엇
- 10. 이 코드에서 임시 Vector 인스턴스의 용도는 무엇입니까?
- 11. 이 코드에서 1 번 번호는 무엇입니까
- 12. 이 코드에서 null이 나타나는 이유는 무엇입니까?
- 13. 이 코드에서 ArrayIndexOutOfBounds 오류의 원인은 무엇입니까?
- 14. 이 Perl 코드에서 이스케이프 처리하는 방법은 무엇입니까?
- 15. 이 코드에서 오류가 발생하는 이유는 무엇입니까?
- 16. 이 코드에서 switch/default의 이상한 목적은 무엇입니까?
- 17. 이 코드에서 NullPointerException이 발생하는 이유는 무엇입니까?
- 18. 이 코드에서 변수 g를 찾는 방법은 무엇입니까?
- 19. 이 코드에서 잘못된 점은 무엇입니까? 이 코드 뭐죠 잘못
- 20. 코드에서 IHardwareService를 사용하는 방법?
- 21. 파이썬을 사용하는 이진 이미지에 데이터 임베드
- 22. 이 앱에서 사용하는 라이브러리는 무엇입니까?
- 23. Silverlight에서 코드에서 DataTrigger를 사용하는 방법?
- 24. 내가 사용해야하는 erlang 내에서 파이썬을 사용하는 두 가지 방법은 무엇입니까?
- 25. 파이썬을 사용하여 트위터에서 해시 태그를 사용하는 방법은 무엇입니까?
- 26. 이 linq 코드에서 복수 orderby
- 27. 이 코드에서 클래스 소멸자를 호출해야합니까?
- 28. 이 코드에서 ffmpeg가 실행되는 방법
- 29. 이 코드에서 어디에서 잘못 되었습니까?
- 30. 이 코드에서 시간 제한 기능
구체적으로, 텍스트 모드로 열리는 파일의 경우,'fd.write ("foo \ n")'는 실제로 디스크'foo \ r \ n' ('\ r '에주의)에 씁니다. –