demo.py

问题

要求运行该程序后,生成demo_new.py文件,其中内容与demo.py一样,但需要在每一行的后面注释上行号(#1),并且要求所有行的#垂直对齐
思路:

首先统计文档中最长的那一行的长度(maxlength),然后再每行的末尾填充至最长长度
最后在每行末尾添加‘#’号
代码:

filename = 'demo.py'
with open(filename, 'r', encoding='UTF-8') as fp:
    lines = fp.readlines()                             #将demo.py每一行内容记入lines中
    maxLength = len(max(lines, key=len))               #统计最长的行的长度,方便填充空格以致对齐

lines = [line.rstrip().ljust(maxLength)+'#'+str(index)+'\n' #rstrip() 删除 string 字符串末尾的指定字符(默认为空格)
    for index, line in enumerate(lines)]                    # ljust() 方法返回一个原字符串左对齐,并使用空格填充至指定长度的新字符串
with open(filename[:-3]+'_new.py', 'w') as fp:
    fp.writelines(lines)
  • 9
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值