format格式化

 1 # 基本的格式化
 2 top1 = "My name is {} and my English name is {}.I`m {} years old".format("liu","crab","33")
 3 
 4 # 传入的是列表,列表前面必须加个星号
 5 top2 = "My name is {} and my English name is {}.I`m {} years old".format(*["liu","crab","33"])
 6 
 7 # 大括号里的数字是按照取元祖下标的方式进行标号,例如format后面的元祖只有3个,如果下标取到3以后的数字会报错
 8 top3 = "My name is {0} and my English name is {1}.I`m {0} years old".format("liu","crab","33")
 9 
10 # 大括号里写入数字,后面也可以传入列表,列表前面必须加个星号,其他规则同top3
11 top4 = "My name is {0} and my English name is {1}.I`m {0} years old".format(*["liu","crab","33"])
12 
13 # 常用的格式化
14 top5 = "My name is {name} ,I`m {age} years old".format(name = "liu",age = "33")
15 
16 # 大括号里命名后,format后可传入字典,字典前面必须加2个星号,输出后是key对应的value值
17 top6 = "My name is {name} ,I`m {age} years old".format(**{"name":"crab","age":33})
18 
19 # format里如果是多个列表并要从中取值,大括号里选取的方式和正常从列表中取值的方式相同。
20 top7 = "My name is {0[0]} and my English name is {1[0]}.I`m {1[1]} years old".format(["zhao","qian","sun","li"],["alex","haha","oo"],[12,13,14,15,16])
21 
22 # 大括号里必须有冒号“ :”,但是format后的值,必须和前面":s",":d",":f"对应,否则会报错。例如:如果我把中间的"33"换成字符串,那么就会报错
23 top8 = "My name is {:s} and my English name is {:d}.I`m {:f} years old".format("liu", 33, 2.23)
24 
25 # 列表前要加星号,其他规则同top8,列表中的顺序也要和前面的一一对应,否则会报错
26 top9 = "My name is {:s} and my English name is {:s}.I`m {:d} years old".format(*["liu","crab",33])

top1的结果是: My name is liu and my English name is crab.I`m 33 years old
top2的结果是: My name is liu and my English name is crab.I`m 33 years old
top3的结果是: My name is liu and my English name is crab.I`m liu years old
top4的结果是: My name is liu and my English name is crab.I`m liu years old
top5的结果是: My name is liu ,I`m 33 years old
top6的结果是: My name is crab ,I`m 33 years old
top7的结果是: My name is zhao and my English name is alex.I`m haha years old
top8的结果是: My name is liu and my English name is 33.I`m 2.230000 years old
top9的结果是: My name is liu and my English name is crab.I`m 33 years old

posted @ 2018-11-14 18:03  星空下的螃蟹  阅读(297)  评论(0编辑  收藏  举报