开发者

Python, splitting strings

I have a large string text file, I would like to split the string every 117 characters and put the next 117 chars on a newline, and so on until the end of the file.

I tried this:`s = """ I have removed the string for visibility reasons """ space = """

""" file = open('testoutput.txt', 'w') while s: print s[:10] output = output + s + """

"""
s = s[10:]

file.write(output) file.close() print "Done" `

but had the issue where the final output in the file looked like this cascading:` this [SHIFT]r[BACKSPACE]molecule and its descendants would av[BACKSPACE][BACKSPACE]vary because of mutations

T]r[BACKSPACE]molecule and its descendants would av[BACKSPACE][BACKSPACE]vary because of mutations



ACE]molecule and its descendants would av[BACKSPACE][BACKSPACE]vary because of mutations



le and its descendants would av[BACKSPACE][BACKSPACE]vary because of mutations



 descendants would av[BACKSPACE][BACKSPACE]vary because of mutations



ts would av[BACKSPACE][BACKSPACE]vary because of mutations



v[BACKSPACE][BACKSPACE]vary because of mutations



E][BACKSPACE]vary because of mutations



CE]vary because开发者_开发知识库 of mutations



cause of mutations



utations

`


while s:
    print s[:117]
    s = s[117:]


You can either split a buffer using the regular slicing syntax, or you may opt to split the file directly while reading it. This is an example of the second approach:

with open(r"/path/to/some/file") as input_file:
    line = input_file.read(117)
    while line:
        print len(line)
        line = input_file.read(117)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜