python - 获取列表中每一行的长度
问题描述
我有一段文本,我想在少于 50 个字符的任何行的末尾添加一个换行符。
这就是我所在的地方
text = open('file.txt','r+')
line_length = []
lines = list(enumerate(text))
for i in lines:
line_length.append(len(i))
print lines
print line_length
我只是一遍又一遍地得到一个值 2 的大列表。我知道每行的长度不是2。
编辑:这是我使用的解决方案
text = open('text.txt','r+')
new = open('new.txt','r+')
new.truncate(0)
l=[]
for i in text.readlines():
if len(i) < 50:
l.append(i+'\n')
else:
l.append(i)
new.write(' '.join(l))
text.close()
new.close()
解决方案
好喜欢:
text = open('file.txt','r+')
l=[]
for i in text.readlines():
if len(i)<50:
l.append(i)
else:
l.append(i.rstrip())
不需要enumerate
。
或单线(我推荐这个):
l=[i if len(i)<50 else i.rstrip() for i in text.readlines()]
所以你的代码不起作用,因为真的enumerate
.
两种情况:
print(l)
是期望的输出。
推荐阅读
- c# - 旋转列中的值以用作 Telerik Grid 中的多列标题
- python - How can i get the user's current voice channel ID?
- javascript - MediaRecorder 在本地工作,但不在服务器上返回数据
- docker - 使用覆盖网络按名称访问第二个 Docker 主机上的容器
- r - left_join 命令警告消息
- sql - Oracle将行复制到具有不同日期的同一个表中
- javascript - html dir = rtl,日期时间对齐问题
- java - 所有键和值都必须为非空
- javascript - RSK 上的智能合约有没有办法在不使用预言机的情况下从比特币网络获取链上数据?
- r - 具有返回列表的函数创建新列并展开`data.table`