编写一个程序, 在一个文本文件中查找长度大于 80 个字符的文本行. 从最接近 80 个字符的单词断行, 把剩余文件插入到下一行处. 程序执行完毕后, 应该没有超过 80 个字符的文本行了
1
laoyuan Nov 2, 2016
整个用空格连起来重新排
|
2
lrh3321 Nov 2, 2016
```
line = '12345 ' * 20 # i,j = 0,0 while i < 80: j = i i = line.find(' ',j + 1) print(line[:j]) ``` 从最接近 80 个字符的单词断行 |
3
neoblackcap Nov 2, 2016
这样子格式化小心炸了
|
4
Aliencn Nov 2, 2016
import random
line='1' for a in range(100): line='{} {}'.format(line,'1' * random.randint(0,10)) #print(line) line_list=[] a=80 while True: if len(line) <= 80: line_list.append(line) break if line[a] != ' ': a-=1 else: line_list.append(line[:a]) while line[a] == ' ':a+=1 line=line[a:] a=80 for line in line_list: print('{},len={}'.format(line,len(line))) #从最接近 80 个字符的单词断行 #程序执行完毕后, 应该没有超过 80 个字符的文本行了 |
5
Aliencn Nov 2, 2016
哎呀,发出去就格式乱了,你凑合看吧
|
10
msg7086 Nov 3, 2016 从 str[80]开始向前找空格,找到以后切下来扔出去就行了。
|
11
ruoyu0088 Nov 3, 2016
看看 Python 的标准库 textwrap
|
13
qwer1234asdf Nov 3, 2016 via iPhone
啊……这明明就是一个编辑器该干的事, gedit 设置,两分钟估计就解决了
|