Python学习 :格式化输出
方式一:使用占位符 %
常用占位符:% s (s = string 字符串)
% d (d = digit 整数(十进制))
% f ( f = float 浮点数)
name = input("请输入你的名字:") age = input("请输入你的年龄:") job = input("请输入你的职业:") salary = input("请输入你的薪酬:") if salary.isdigit(): #输入的数据是否像数字 salary = int(salary) else : exit("请输入正确的数字") # 如果输入的不是数字将会退出程序 # ''' 三引号可以用于插入数据 info = ''' ---------- info of %s ---------- 姓名:%s 年龄:%s 职业:%s 薪酬:%s ------------------------------- ''' % (name, name, age, job, salary) print(info)
方式二:format()函数(推荐使用)
format()函数通过传入的字符串作为参数,并使用{}大括号作为占位符
format(a , b) 变量a 对应{0} 变量b 对应{1}
注意:Python从0开始计数,意味着索引中的第一位是0,第二位是1
位置的匹配:
(1)不带编号,即“{}”
(2)带数字编号,可调换顺序,即“{0}”、“{1}”
(3)带关键字,即“{a}”、“{b}”(需要设置关键字对应的字符串)
age = 20 name = 'ALEX' print('{1} is {0} years old' .format(age,name)) print('{b} is {a} years old' .format(a = age, b = name)) >>> ALEX is 20 years old ALEX is 20 years old
format()可以指定格式,让输出的结果符合指定的样式
一些符号的含义:
{0} —— { 0 } 表示第一个位置
{0:10} —— { :10} 表示有10个字符那么长并且左对齐(默认为左对齐)
{0:>15} ——{ :>15} 表示有15个字符那么长并且右对齐
{0:.2} ——{ : .2} 表示对于传入的字符串,截取前两个字符
{0:^} —— {: ^} 表示放到该位置的字符串要居中
{0:d} —— {0:d} 表示需要在这个位置放一个整数(数字默认状态下为右对齐)
{0:f} —— {0:f} 表示需要在这个位置放一个浮点数(数字默认状态下为右对齐)
a = " I love {0:10} and {1:10}. ".format("sing","dance") # 左对齐,字符串的长度为10个字符 print(a) >>> I love sing and dance . a = " I love {0:^10.3} and {1:^10.3}. ".format("sing","dance") # 居中,字符串的长度为10个字符,截取前三个字符 print(a) >>> I love sin and dan . age = 28 weight = 70.423 print("Alex is {0} years old and his weights is {1:.2f} kg." . format(age,weight)) # 浮点数需要保留两位小数 >>> Alex is 28 years old and his weights is 70.42 kg.