python中英⽂混输对不齐_解决Python中英⽂混输格式对齐的
问题
Python中使⽤str.format进⾏格式化输出
format使⽤⽅法较多,这⾥只说明其在填充与对齐上的使⽤⽅法:
填充与对齐
填充常跟对齐⼀起使⽤
^、分别是居中、左对齐、右对齐,后⾯带宽度
:号后⾯带填充的字符,只能是⼀个字符,不指定的话默认是⽤空格填充
例如:
ulist.append([1,"清华⼤学","10" ])
ulist.append([2,"中国科学技术⼤学","10"])
ulist.append([3,"复旦⼤学","10"])
ulist
Out[45]: [[1, '清华⼤学', '10'], [2, '中国科学技术⼤学', '10'], [3, '复旦⼤学', '10']]
for ul in ulist:
print("{:^6}t{:^10}t{:^6}".format(ul[0],ul[1],ul[2]))
1 清华⼤学 10
python格式化输出format
2 中国科学技术⼤学 10
3 复旦⼤学 10
其中print语句采⽤format格式化输出{:^6}表⽰居中显⽰,占6个字符宽度
但是会发现下⾯输出语句中并没有对齐,原因是当中⽂字符串长度没有达到指定字符串长度时,默认会采⽤西⽂空格代替,⽽西⽂空格和中⽂空格长度不同,故导致中英⽂混输时不对齐了。
解决⽅案如下:
采⽤chr(12288)表⽰中⽂空格
代码修改如下:
for ul in ulist:
print("{0:^6}t{1:{3}^10}t{2:^6}".format(ul[0],ul[1],ul[2],chr(12288)))
1    清华⼤学    10
2  中国科学技术⼤学  10
3    复旦⼤学    10
以上这篇解决Python 中英⽂混输格式对齐的问题就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持脚本之家。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。