python中.format()方法使用详解
作者:IT之一小佬 发布时间:2021-07-19 03:38:07
前言
format语法格式:
str.format()
str是指字符串实例对象,常用格式为‘ ’.format()
def format(self, *args, **kwargs): # known special case of str.format
"""
S.format(*args, **kwargs) -> str
Return a formatted version of S, using substitutions from args and kwargs.
The substitutions are identified by braces ('{' and '}').
"""
pass
format参数格式:
'{[index][ : [fill] align][sign][#][width][.precision][type]} {……}{……} '.format()
注意,格式中的[ ]内的参数都是可选参数,可以使用也可以不使用
index:指定冒号**:**后面出现的参数在‘format()’中的索引值,如果没有,则以format()中的默认顺序自动分配
fill:指定空白处的填充符。align:指定数字的对齐方式:align含义<right-aligned 左对齐(对于大部分对象时为默认)>right-aligned 右对齐 (对于数字时为默认)=数据右对齐,同时将符号放置在填充内容的最左侧,该选项只对数字类型有效^数据居中,此选项需和 width 参数一起使用
sign:指定有无符号数,此参数的值以及对应的含义如表所示sign 参数含义+正数前面添加 ‘ + ’ ,负数前面加 ‘ - ’-正数前面不添加 ‘ + ’ ,负数前面加 ‘ - ’space正数前面添加 ‘ 空格 ’ ,负数前面加 ‘ - ’#对于二进制数、八进制数和十六进制数,使用此参数,各进制数前会分别显示 0b、0o、0x前缀;反之则不显示前缀width:指定输出数据时所占的宽度. precision:如果后面存在type参数,则指的是保留小数的位数,如果type参数不存在,则是指有效数字的位数type:指定输出数据的具体类型
一、简单使用方法
1.无参数
foramt会把参数按位置顺序来填充到字符串中,第一个参数是0,然后1 ……也可以不输入数字,则会按照顺序自动分配,而且一个参数可以多次插入
示例代码:
name = '张三'
age = 25
sex = '男'
print('{}、{}、{}'.format(name, age, sex)) # 占位符不指定顺序
print('{0}、{1}、{2}'.format(name, age, sex)) # 占位符制定顺序
print('{0}、{2}、{1}'.format(name, age, sex)) # 换一下顺序试试
print('{0}、{2}、{1}、{0}、{2}、{1}'.format(name, age, sex))
运行结果:
2. key value
示例代码:
name1 = '张三'
age1 = 25
sex1 = '男'
print('name:{name}、age={age}、sex:{sex}'.format(name=name1, age=age1, sex=sex1))
print('name:{name}、sex:{sex}、age={age}'.format(name=name1, age=age1, sex=sex1))
运行结果:
3. 列表
示例代码:
lst1 = ['张三', '男', 25]
lst2 = ['李四', '男', 28]
print('name:{Lst[0]},sex:{Lst[1]},age:{Lst[2]}'.format(Lst=lst1))
print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst1))
print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst2))
print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst1, lst2))
print('name:{1[0]},sex:{1[1]},age:{1[2]}'.format(lst1, lst2))
print('name:{0[0]},sex:{0[1]},age:{0[2]},name:{1[0]},sex:{1[1]},age:{1[2]}'.format(lst1, lst2))
运行结果:
4. 字典
示例代码:
dic1 = {'name': '张三', 'sex': '男', 'age': 25}
dic2 = {'name': '李四', 'sex': '男', 'age': 28}
print('name:{Dic[name]},sex:{Dic[sex]},age:{Dic[age]}'.format(Dic=dic1))
print('name:{name},sex:{sex},age:{age}'.format(**dic2))
运行结果:
5. 类
示例代码:
class Info(object):
name = '张三'
sex = '男'
age = 25
print('name:{info.name},sex:{info.sex},age:{info.age}'.format(info=Info))
运行结果:
6. 魔法参数
*args表示任何多个无名参数,它是一个tuple or list;**kwargs表示关键字参数,它是一个 dict。
示例代码:
lst = [',', '.']
dic = {'name': '张三', 'sex': '男', 'age': 25}
print('name:{name}{0}sex:{sex}{0}age:{age}{1}'.format(*lst, **dic))
运行结果:
二、参数使用方法
示例代码1:
# python :^:代表居中显示,数字567,位数width=10,fill=*(填充符为*)
print('{:*^10}'.format(567))
运行结果:
示例代码2:
# python :0是填充符,2是width,表示位数为2
print('{:02}:{:02}:{:02}'.format(13, 4, 57))
print('{:05}:{:05}:{:05}'.format(13, 4, 57))
运行结果:
来源:https://blog.csdn.net/weixin_44799217/article/details/125829674
猜你喜欢
- ROC曲线绘制要点(仅记录)1、ROC用于度量模型性能2、用于二分类问题,如若遇到多分类也以二分类的思想进行操作。3、二分类问题代码实现(至
- 阅读上一篇:FrontPage XP设计教程5——表单的设计 在制作出图文并茂的网页之后,很多读者朋友还想让自己的网页能够播放音乐、视频等多
- 这篇文章主要介绍了Python实现自定义读写分离代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 当一台计算机上有多个网卡时,需要选择对应IP地址的网卡进行发送数据包或者接受数据包。1、选择网卡发包(应用scapy):plface=con
- 前言去年在做golangserver的时候,内部比较头疼的就是在线服务发布的时候,大量用户的请求在发布时候会被重连,在那时候也想了n多的方法
- 当今,有一点可以肯定的是,设计的领域在扩大,这是一个需要设计的世界。拒最新的统计资料显示,中国目前已有正规的设计学院教学机构700多所,并且
- ASP木马防御: 代码如下:const adTypeBinary=1 dim jpg(1):jpg(0)=CB
- 大家好,今天分享一个非常有趣的 Python 教程,如何美化一个 matplotlib 折线图,喜欢记得收藏、关注、点赞。1. 导入包imp
- 今天写了一个放迅雷焦点广告的效果,还请大家多多指正,先附上效果图一张:相关文章:迅雷首页新闻图片轮播效果js源码首先是JS代码部分,之前一定
- 本文实例讲述了Python编程生成随机用户名及密码的方法。分享给大家供大家参考,具体如下:方案一:import randomglobal u
- 是什么能让一个设计看上去是协调的,有条理的,专业的?答案是”色彩”.不是所有的项目都要用那种浅的”公司蓝”(corporate blue)才
- 相关代码:JavaScript写的日期时间控件,很好用 13个超酷的js显示时间效果 <html><head><
- 目录用Python实现定时任务用Python实现定时任务的四种方法利用while True: + sleep()实现定时任务利用thread
- python 创建List二维列表lists = [[] for i in range(3)] # 创建的是多行三列的二维列表for i i
- 关于JavaSctipt的兼容性,最懒的办法就是用jQuery的工具函数。尽量不要用那些什么ECMAScript之类的函数,因为很多浏览器都
- jupyter因为其在python框架下具有一个较为人性化的设计,从而在数据分析,python教学,以及python的快速学习中大放光彩.j
- 一:crypto库安装pycrypto,pycryptodome是crypto第三方库,pycrypto已经停止更新三年了,所以不建议安装这
- 首先让我祭出一张数学王子高斯的照片,这位印在德国马克上的神人有多牛呢? 他是近代数学的奠基人之一,与牛顿, 阿基米德并称顶级三大数学家,随便
- 在日常生活中,经常会遇到需要提交身份证正反面证明资料的情况,而且这些网站大部分只接受pdf格式,这时候我们就需要把身份证正反面两张图片合成为
- 环境Python 3.7.4pymysql8.0.11 MySQL Community Server读取图片以二进制格式读取图片with o