脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - Python利用format函数实现对齐打印(左对齐、右对齐与居中对齐)

Python利用format函数实现对齐打印(左对齐、右对齐与居中对齐)

2022-12-08 11:08暖暖Immer Python

format是字符串内嵌的一个方法,用于格式化字符串,下面这篇文章主要给大家介绍了关于Python利用format函数实现对齐打印(左对齐、右对齐与居中对齐)的相关资料,需要的朋友可以参考下

forma格式化的用法

format函数可以接受不限个参数,位置可以不按顺序。

基本语法是通过{ }和:来代替c语言的%。

?
1
2
3
>>> a="名字是:{0},年龄是:{1}"
>>> a.format("煮雨",18)
'名字是:煮雨,年龄是:18'

{0},{1}代表的占位符,数字占位符要注意顺序。

?
1
2
3
>>> c="名字是:{name},年龄是:{age}"
>>> c.format(age=19,name='煮雨')
'名字是:煮雨,年龄是:19'

用format函数实现对齐打印

  • 居中对齐 (:^)
  • 靠左对齐 (:<)
  • 靠右对齐 (:>)

居中对齐示例

?
1
2
3
4
5
def show(n):
    tail = "*"*(2*n-1)   #最底下一行显示出(2*n-1)个星号
    width = len(tail)   #计算星号所在行的宽度,作为其他行的对齐基准
    for i in range(1,2*n,2):
        print("{:^{}}".format("*"*i,width))

format函数读取变量时候由外向内:

  • { :^{ } },括号读取变量=="*"*i==
  • { :^ { } } ,居中对齐
  • { :^ { } } ,最内层括号读取变量width,作为对齐打印基准

show(5)
输出结果如下所示:

    *    
   ***   
  *****  
 ******* 
*********    #tail变量,显示出9个星号(n = 5)

右对齐示例

?
1
2
3
4
5
def show(n):
    tail = "*"*(2*n-1)
    width = len(tail)
    for i in range(1,2*n,2):
        print("{:>{}}".format("*"*i,width))

show(5)
输出结果如下所示:

        *
      ***
    *****
  *******
*********

左对齐示例

?
1
2
3
4
5
def show(n):
    tail = "*"*(2*n-1)
    width = len(tail)
    for i in range(1,2*n,2):
        print("{:<{}}".format("*"*i,width))

show(5)
输出结果如下所示:

*        
***      
*****    
*******  
*********

总结

到此这篇关于Python利用format函数实现对齐打印(左对齐、右对齐与居中对齐)的文章就介绍到这了,更多相关Python format函数对齐打印内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_44630991/article/details/86767601

延伸 · 阅读

精彩推荐