python中format的用法菜鸟教程,pythonformat用法
FOMAT作为python的格式化字符串函数,主要是通过字符串中的花括号{}来标识替换字段,从而完成字符串的格式化。下面这篇文章主要介绍Python中format用法的相关信息,有需要的朋友可以参考一下。
00-1010 1.基本用法1。按照{}的顺序匹配括号中的值。2.通过索引匹配参数。3.根据名称匹配参数。2.混搭。1.使用对象的属性。2.支持参数的部分引用。3.处理数字。4.格式处理。5.填充字符。6.拆分列表和元组的摘要。格式是一种字符串嵌入的方法。用花括号{}表示被替换的字符串。
目录
1、基本用法
s={}是一个{} 。格式(“汤姆”、“男孩”)
汤姆是一个男孩
s1={}是一个{} 。格式(“汤姆”)
# throw异常,替换索引1超出了位置参数元组的范围
打印(s1)
1. 按照{}的顺序依次匹配括号中的值
s=“{ 0 }是一个{1}”。格式(“汤姆”、“男孩”)
汤姆是一个男孩
S1=“{ 1 }是一个{2}”。格式(“汤姆”、“莉莉”、“女孩”)
打印(s1) #莉莉是一个女孩
字符串中索引的顺序可以打乱,而不会影响匹配。
s=“{ 1 }是一个{0}”。格式(男孩,汤姆,)
汤姆是一个男孩
2. 通过索引的方式去匹配参数
s=“{ name }是一个{sex}”。格式(姓名=汤姆,性别=男孩)
汤姆是一个男孩
同样,如果参数已经确定,可以直接用{}进行格式化引用。
name=Tom
性别=女孩
#以F开头意味着字符串中支持大括号中的python表达式。3.6以后支持这种用法。
s=f“{ name }是一个{sex}”
汤姆是一个男孩
3. 通过参数名来匹配参数
您可以通过索引和参数名称来混合和匹配。
s=我叫{},我{年龄}岁,她叫{} 。格式(黎明,百合,年龄=10)
我的名字叫李明,我10岁了,她的名字叫莉莉
请注意,命名参数必须写在末尾。负责编译和报告错误!
s=我叫{},我{年龄}岁,她叫{} 。格式(“黎明”,年龄=10,“莉莉”)
print # syntax error :位置参数跟在关键字参数后面
此外,不能将索引与默认格式混合使用。
s=“{ }是一个{0}”。格式(男孩,汤姆,)
印刷品
S1=“{ }是一个{1}”。格式(男孩,汤姆,)
打印(s1)
#以上两种写法都有报道。
异常。
# ValueError: cannot switch from automatic field numbering to manual field specification
2、进阶用法
1. 通过对象的属性
class Names():name1=Kevin
name2=Tom
print hello {names.name1} i am {names.name2}.format(names=Names)
# hello Kevin i am Tom
2. 支持对参数部分引用
可以通过索引对参数的部分进行取值。如下:s[0] = w。
s = "The word is {s}, {s[0]} is initials".format(s=world)# The word is world, w is initials
print(s)
3. 数字的处理
如何使用format 保留两位小数呢? 需要使用:.2f,在用%进行格式化时我们使用的是%:.2f
s = π is {:.2f}.format(3.1415926)print(s) # π is 3.14
s1 = π is %.2f% 3.1415926
print(s1) # π is 3.14
同时这种方法还可以用于字符串截取,不过数字后面就不能加f了。
s = "{:.1}".format(Hello)print(s) # H
给数字加千位符
s = "{:,}".format(1000000)print(s) # 1,000,000
将数字转换成二进制
s = "{:b}".format(8)print(s) # 1000
将数字转换成八进制
s = "{:o}".format(8)print(s) # 10
将数字转换成十六进制
s = "{:X}".format(12)print(s) # C
4. 格式处理
通过:+数字指定转换后的字符串长度,不足的部分用空格补充
s = "{:2}b".format(a)print(s) # a b (a后面补了一个空格)
# 如果指定的长度小于参数的长度,按照原参数匹配
s1 = "{:2}World".format(Hello)
print(s1) # HelloWorld
5. 字符的填充
可通过:符号^数字进行字符串的填充。 其中数字为填充后的字符串总长度。
s = "{:*^10}".format(Hello)print(s) # **Hello***
s = "{:-^20}".format(123456)
print(s) # -------123456-------
如果数字小于字符串的长度,则不进行填充操作。
s = "{:*^3}".format(Hello)print(s) # Hello
6. list、tuple的拆分
在format格式化时,可使用* 或者 ** 进行对list、tuple拆分。
foods = [fish, beef, fruit]s = i like eat {} and {} and {}.format(*foods)
# i like eat fish and beef and fruit
print(s)
foods = [fish, beef, fruit]
s = i like eat {2} and {0} and {1}.format(*foods)
# i like eat fruit and fish and beef
print(s)
dict_temp = {name: Lily, age: 18}
# 字典需要用 ** 进行拆分
s = My name is {name}, i am {age} years old.format(**dict_temp)
print(s) # My name is Lily, i am 18 years old
总结
到此这篇关于python中format用法的文章就介绍到这了,更多相关python中format用法内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。