2016-10-23 4 views
-3

이것은 정말 간단한 질문이지만, 그 이유는 알 수 없습니다. 텍스트의 몸 전체를 인쇄하려고하지만, 다음과 같은 코드가 단지 그것의 절반 이하에 대해 인쇄 : 오전 유사한 문제에 직면파이썬은 전체 파일을 읽지 않습니다.

textfile = open("helloworld.txt") 
body = textfile.read() 
print body 

textfile = open("helloworld.txt") 
for line in textfile: 
    line = line.rstrip()  
    print line 
+3

이러한 전략은 효과가 있습니다. 더 많은 정보가 없으면 우리는 해결책을 제시 할 수 없습니다. – TigerhawkT3

+0

언뜻보기에 적합합니다. 코드가 아닌 파일에 문제가있을 수 있습니다. – agg3l

+0

파일을 게시 할 수 있습니까? –

답변

-1

- 나는 보통에 문제를 발견했다 나쁜 UTF-8 인코딩 때문일 수 있습니다. 파이썬은이 잘못된 데이터를 볼 때 충돌합니다.

그래서 저는 두 가지 방법 중 하나는 그것이

1) 파이썬 코드 즉

고양이 Some_File.txt 전에 변환 극복하기 위해 사용 | iconv -f utf-8 -t utf-8 -c | python my_py_code.py

-c 스위치는 잘못된 UTF-8 문자를 무시한다는 것을 의미합니다.

2) 파이썬에게

0

저 위의 전혀 이해되지 않는다 전에 제출 된 코드를하는 데 도움이 단지

ifp=open('Some_File.txt','r') 
all_text='' 
for line in ifp: 
    all_text=all_text+line.decode('utf-8','errors'='Ignore').encode('utf-8') 
print(''+all_text) 
ifp.close() 

희망을 사용하여, 왜 UTF-8 UTF-8로 다시 인코딩 디코딩 것인가?

잊어 버리십시오. 시도해 보도록하겠습니다.

여기에 내 제안 print open('FileLocation').read()

의이 파이썬 문제보다 운영 체제 문제가 더있을 수 있습니다. os가 특정 데이터를 좋아하지 않는다면 터미널/cmd에 해당 문자를 바꾸거나 표시하지 않을 수 있습니다.

저는 개인적으로 리눅스를 사용하며 이런 문제에 결코 빠지지 않았습니다. 문제는 메모리 사용량을 줄이는 데 도움이 될 수 있지만, 오류가 발생하지 않기 때문에 다소 의문 스럽습니다. 문서를 샘플링 할 수 있습니까? 그래서 저 또는 다른 사람이 해결책을 찾기 위해 그 문서를 가지고 놀 수 있습니까?

관련 문제