필요에 따라 바이트를 읽지 않고 한 파일에서 전체 파일을 읽는 데 장단점이 있습니까?전체 파일을 읽는 데 어떤 이점이 있습니까?
file_handle = open("somefile", rb)
part1 = file_handle.read(10)
# do some stuff
part2 = file_handle.read(8)
# do some more stuff etc
배경 :
file_handle = open("somefile", rb)
file_contents = file_handle.read()
# do all the things using file_contents
에 비해 : 그래서 어떤 장점이있다 파이썬에서 P 코드 (바이트 코드) 인터프리터를 쓰고 있어요 그리고 처음에 단지 바이트를 읽어내는 순진 구현을 작성했습니다 필요에 따라 파일에서 필요한 작업을 수행합니다. 프로그램을 보여주고 있던 친구가 전체 파일을 메모리 (파이썬 목록)로 읽은 다음 느린 디스크 읽기를 피하기 위해 메모리에서 처리해야한다고 제안했습니다. 테스트 파일은 현재 1KB 미만이고 아마도 최대 100KB이므로 운영 체제 및 디스크 컨트롤러 시스템이 파일을 캐시하여 파일의 작은 덩어리를 반복적으로 읽음으로써 발생하는 성능 문제를 해결할 것으로 기대했을 것입니다.
귀하의 친구가 맞으며, 실행 환경에 대한 귀하의 믿음이 잘못 배치 된 것 같습니다. 가능한 한 최선을 다해 당신을 세부적인 것으로부터 격리 시키려고 노력할 것이지만 그렇게 많이 도움이되지는 않을 것입니다. –