2013-08-23 97 views
0

我一直在試圖找出一個Python的問題,這讓我瘋狂了幾個星期... 我有一個文本文件,體量適中。一些行有超過50個字符,這對我來說是一個問題,因爲它必須與文本框對齊。Python插入新行,如果行有超過50個字符

我的問題是: 如果文本文件上的一行超過50個字符(包括空格),如何設置插入新行(\ n)?

在此先感謝。

回答

5

這應該做的伎倆

with open('path/to/input') as infile, open('path/to/output', 'w') as outfile: 
    for line in infile: 
    if len(line) > 50: 
     outfile.write('\n'.join(line[i:i+50] for i in xrange(0,len(line), 50))) 
    else: 
     outfile.write(line) 
+0

太棒了!謝謝!像魅力一樣工作 – Den1al

+0

肯定會做:) – Den1al

+0

你這樣分詞。 – joaquin

7

設有一個圖書館這一點。請嘗試以下操作:

import textwrap 

wrapped = textwrap.fill(YourText, 50) 
+0

這種方法對我而言並不奏效,因爲即使只有2個字符的行,它也會每隔50個字符輸入一行。 – Den1al

+0

上面假設'YourText'是一個單獨的段落。 –

相關問題