을 반환하지 않습니다 파일에서. 그러나 마지막 줄에 새 줄 기호가 포함되어 있지 않으면 마지막 줄 앞에 하나씩 끝납니다. Windows 환경에서 스크립트를 실행하고 파이썬 3.6을 사용합니다. 첫 번째 경우 예를 들어 파일의 경우파일 반복자는 내가 파이썬에 새로운 그리고 난 파일을 읽고 출력에 인쇄하는 간단한 스크립트가 마지막 줄
:
Some text here
Some here
그러나 마지막 줄이 포함 된 경우 새로운 라인 심볼의 출력은 다음과 같습니다 :
Some text here
Some here
and here
그리고 스크립트의 출력은
Some text here
Some here
and here
내가 내가 잘못 했니?
재생할 수 없습니다. 어쨌든 코드를 단순화 할 수 있습니다. 'open ('somefile.txt', mode = 'rt', encoding = 'utf-8')'은'open '에 대한 디폴트 값인'rt'와 인코딩'utf- ('somefile.txt')'. 또한 파일을 수동으로 열고 닫는 대신'with' 절을 사용하는 것이 좋습니다. 마지막으로'print' 만 할 수 있다면 왜 수동으로'sys.stdout'에 쓰는가? – DeepSpace
프로그램이 실행 중입니까? 'sys.stdout'은 버퍼 된 라인이므로 루프가 끝난 후에'sys.stdout.flush()'를 추가하여 버퍼에 아무것도 갇혀 있지 않은지 확인해보십시오. – ShadowRanger
* [ "개행 문자 (\ n)는 문자열의 끝에 있으며 파일이 개행 문자로 끝나지 않으면 파일의 마지막 줄에서 생략됩니다]"] (https : // docs. python.org/3/tutorial/inputoutput.html) <- 마지막 줄은 항상 새로운 줄의 유무와 상관없이 읽혀집니다. – danihp