2010-07-23 5 views
0

수 텍스트 파일에 나던 쓰기 이하로한다 예상대로 같은 :파이썬 : 서식 파일이 없습니다 그것은

AAAAAAABBBBCDEEEEEFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJKKKKKKKKKKKKLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMNNNNNNNNNNNNOOOOOOOOOOOO 

하지만 내가 좋아하는 것 :

import re 

download_results = open('download_result.txt', 'w') 
s = 'AAAAAAABBBBCDEEEEEFFFFFFFFFFFFFGGGGGGGGGGGG##GGGGGGHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJKKKKKKKKKKKKLLLLLLLLLLLLLLLLMMMMMMM&&MMMMMMMMNNNNNNNNNNNNOOOOOOOOOOOO' 
s = re.sub(r'[^\w]','',s) 
s = ''.join(s) 
for i in range(0, len(s), 60): 
    download_results.write('%s' % (s[i:i+60])) 
download_results.write('\n\n') 
download_results.close() 

텍스트 파일의 출력은 출력은 다음과 같습니다.

AAAAAAABBBBCDEEEEEFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGHHHHHHHHHHH 
HHHIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJKKKKKKKKKKKKLLLLLLLLLLLLLL 
LLMMMMMMMMMMMMMMMNNNNNNNNNNNNOOOOOOOOOOOO 

여기서 스크립트는 60자를 포함하는 행에 "S"를 씁니다.

답변

2

변경이이에

download_results.write('%s' % (s[i:i+60])) 

: 당신은 어떤을 작성하지 않는

download_results.write('%s\n' % (s[i:i+60])) 
1

그런 다음 에 루프 내에서 개행을 추가하십시오. write()print과 달리 개행을 자동으로 추가하지 않습니다.

for i in range(0, len(s), 60): 
    download_results.write('%s\n' % (s[i:i+60])) 
download_results.write('\n') 
download_results.close() 
+0

'.write ('\ n')'이 for 루프에 있어야한다고 생각합니다. 그렇지 않습니다. – kiswa

+0

아니, 나는하지 않았다. 루프에서 작성된 개행 문자는' '% s \ n' '에있는 개행 문자입니다 - OP 코드에서'write ('\ n \ n ')'을 (를) 미러하는 것입니다. – Amber

0

.write 호출에 개행을 추가하십시오. write 줄 바꿈 자체를 추가하지 않습니다 (print 당신을 혼란 어떤되었을 수있는 않습니다)

1

개행 문자를 파일에 추가하십시오.

관련 문제