信息发布→ 登录 注册 退出

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

发布时间:2026-01-11

点击量:
目录
  • forma格式化的用法
  • 用format函数实现对齐打印
  • 居中对齐示例
  • 右对齐示例
  • 左对齐示例
  • 总结

forma格式化的用法

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

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

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

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

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

用format函数实现对齐打印

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

居中对齐示例

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)

右对齐示例

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

show(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)
输出结果如下所示:

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

总结

在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!