Python字符串格式化
01字符串的格式化分类
字符串的格式化方法共两种:占位符(%)与format方式。占位符方式在Python2比较常见,随着Python3到来,format方式变得广泛起来,format函数常与print()函数结合使用,具备很强的格式化输出能力。#python#
但是,目前Python3仍然支持占位符格式。
占位符与format各版本使用
02一、占位符表示字符串格式化
占位符汇总表
1. %d
#代码1
age = int(input("请输入你的年龄:"))
print("你的年龄是: %d岁" %age)
#end1
age键盘输入整数型,打印整数型
2. %s
#代码2
name = input("请输入你的名字:")
print("你的名字是: %s" %name)
#end2
字符串格式输出键入内容
3. %f
#代码3
a=13
b=150
c=a*b
print('%07d x %e = %f' % (a,b,c)) #%07表示占用位数,空白用0填充
#end3
多种占位符一起使用
03二、format格式化函数
format函数常与print()函数结合使用,具备很强的格式化输出能力。
1.位置映射的format方法
位置映射原理展示 from:迷鸟归林
#代码4
print("{}:{}".format('192.168.2.108',8888))
print('{}今天{}{}'.format('coll','写百家号',"666"))#通过位置Z
#end4
{}不设置引索号均留空,设置的话如图:
2.索引号元素访问方法
索引号元素访问方法,阅读性最佳
设置索引号要从0整数递增,如0,1,2,3,不可以跳跃,不可以从1开始,不然会报错。
#代码5
print('{0}今天{1}{2}'.format('coll','写百家号',"666"))#通过位置Z
print('www.'"{0[0]}.{0[1]}".format(('baidu','com')))
#end5
索引号元素连接案例成功图
跳跃索引号报错情况展示
3.关键字映射访问方法
关键字(自定义变量名)映射方法
#代码6
print("{server}{1}:{0}".format(8888,'192.168.1.100',server='Web Server Info :'))
print('{我}今天{action}'.format(我='coll',action ='在写百家号')) # 通过关键字
#end6
通过自定义变量名字关键字映射
4.填充对齐
对齐符号与用途
print("{0}*{1}={2:0>2}".format(3,2,2*3))
#代码7
print("{0}*{1}={2:0>2}".format(3,2,2*3)) #见上图对齐符钱设置字符宽度
print("{:*^20}".format('Centered'))
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))
show(5)
#end7
填充与对齐的演示
5.精度设置
精度设置常用语浮点型小数数字里,对科学计数法同样适用。
精度设置的原理图解 from 迷鸟归林
#代码8
print("{:.3f}".format(2.1415)) #设置小数点后三位有效
print("{:.10f}".format(3.1415)) #设置小数点后十位有效数字
#end8
常用于小数点保留有效数字等场景
6.与字典交互输入
使用字典传入,结合第三步的关键字一起使用,特别提醒:在字典关键字前加入**,应用场景包括个人状态切换,比如天气气候,工作生活状态,在线离线状态等。
#代码9
grade = {'I' : 'coll', '状态': '写百家号'}
print('{I}比较无聊,在{状态}'.format(**grade))#字典前加上**
字典前加上**
7.数字进制转换
比如十进制转二进制,八进制转十进制,十进制转十六进制等。
进制转换演示
#代码10
print('{:b}'.format(100)) # 十进制转换成二进制2
print('{:o}'.format(250)) # 十进制 转换成八进制8
print('{:d}'.format(250)) # 十进制 转换成十进制10
print('{:x}'.format(99)) # 十进制 转换成十六进制16
#end10
8.数字千分位分割
仅对数字有效,具体使用如下:
千分位逗号分割
#代码11
print('{:,}'.format(10000000000))
print('{:,}'.format(235625445.234235)) # 只对数字生效
#end11
相互学习,相互进步
本文系统讲述了Python3占位符的使用及字符串格式化,希望对大家学习有帮助,有错误的地方欢迎留言改正,也希望大家多点赞收藏和分享,谢谢大家的时间!再次致谢(拦路雨、迷鸟归林)的指导。推荐一本图灵出品的Python函数式编程。