2013-06-21 4 views
4

나는 내용이 테스트라는 파일이 있습니다- 첫 번째 줄은 누락되고

a 
b 
c 
d 
e 
f 
g 

내가 라인으로이 파일 라인을 읽고 그것을 인쇄하려면 다음 파이썬 코드를 사용하고를 아웃 :

with open('test.txt') as x: 
    for line in x: 
     print(x.read()) 
이의 결과는 결과가 즉, 첫 줄을 제외한 텍스트 파일의 내용을 인쇄하는 것입니다

:

b 
c 
d 
e 
f 
g 

파일의 첫 번째 행이 누락 된 이유는 누구나 알 수 있습니까?

답변

8

for line in x은 모든 행을 반복합니다.

with open('test.txt') as x: 
    for line in x: 
     # By this point, line is set to the first line 
     # the file cursor has advanced just past the first line 
     print(x.read()) 
     # the above prints everything after the first line 
     # file cursor reaches EOF, no more lines to iterate in for loop 

아마도 당신은 의미 :

with open('test.txt') as x: 
    print(x.read()) 

한 번에 모두 인쇄, 또는 :

with open('test.txt') as x: 
    for line in x: 
     print line.rstrip() 

은 라인으로 라인을 인쇄 할 수 있습니다. 후자는 파일의 전체 내용을 한 번에 메모리에로드 할 필요가 없기 때문에 권장됩니다.

+0

정확히 내가 찾고있는 것이 었습니다. 고맙습니다. D – Riddle

+0

@ 수수께끼 없음 – jamylak

관련 문제