玩蛇网提供最新Python编程技术信息以及Python资源下载!

想把单行文本文件变成两行对齐的格式,python源码应该怎么写?

][1]

[]内的文字新建一行秒自动对齐[]右边的文字。
如果一行内 只有一个[],一个中文占2个空格,英文占一个,就能做到,但如果出现多个[]就想不到了。

请教用python处理这样的问题应该怎么做呢?

谢谢!!

ps:[]内的字符不单一,有的是[F],有的可能是[Fm]、[Fmaj7]多个字符。

python3

设置字体为 等宽字体

>>> s='[F]内的文字新建一行秒自动对齐[C]右边的文字'
>>> import re
>>> ptn=re.compile(r'\[([^]]+)\]([^[]+)')
>>> ss='';t=''
>>> for x,y in ptn.findall(s):
    ss+=('{:<%d}'% len(bytes(y,'gbk'))).format(x)
    t+=y

    
>>> print(ss,t,sep='\n')
F                         C         
内的文字新建一行秒自动对齐右边的文字

另一个适应型更强的方法:

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd14099.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年05月24日 - 14时45分14秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules