简单剖析一下Python的format的用法
本篇文章给大家带来了python的相关知识,其中主要介绍了format的用法,fotmat作为python的的格式字符串函数,主要通过字符串中的花括号{},来识别替换字段,从而完成字符串的格式化,希望对大家有帮助。
推荐学习:python学习教程
format的详细讲解
一.基础用法
- format术语说明
fotmat作为Python的的格式字符串函数,主要通过字符串中的花括号{},来识别替换字段,从而完成字符串的格式化。
print("我叫{},今年{}岁。".format("小蜜",18))#我叫小蜜,今年18岁。#花括号的个数决定了,参数的个数。但是花括号的个数可以少于参数。print("我喜欢{}和{}"format("乒乓球","羽毛球","敲代码"))#我喜欢乒乓球和羽毛球。"""花括号多于参数的个数,则会报错。"""
2.通过数字参数传入位置参数
传入参数注意以下事项
#通过数字索引传入参数print("名字{0},家住{1}").format("橙留香","水果村")#带数字的替换1字段可以重复"pythonprint("我爱{0}。他爱{1}。{0}爱{1}".format("灰太狼","红太狼")"""我爱灰太狼他爱红太狼灰太狼爱红太狼""""""数字形式的简单字段名相当于把字段当成一个序列形式。通过索引的形式进行一一取值"""print("小明喜欢{1},{2}和{0}".foramt("海绵宝宝","机器猫","海贼王","火影忍者","龙珠"))#小明喜欢机器猫,海贼王,和海绵宝宝
3.用关键字传递
立即学习“Python免费学习笔记(深入)”;
print("我今年{age}岁,我在读{college}".format(age=18","college="大学"))#我今年18岁,我今年20岁#关键字可以随便放置print("我今年{age}岁,我在读{college}".format("college="大学",age=18"))
4.关键字和数字的混合使用
注意以下事项
#混合使用传递参数print("我是要当{0},他是要当{1},这个世界只有一个{truth}".format("海贼王","火影",truth="真理"))#我要当海贼王,他要当火影,这个世界只有一个真理#数字也可以省略print("我是要当{},他是要当{},这个世界只有一个{truth}".format("海贼王","火影",truth="真理"))#如果关建字位于位置参数之前则会发生'''SyntaxError: unexpected indent'''
5.使用元组和字典传参
a=["鸣人","火影","雏田"]print("我是{},我是要当{}的男人".format(*a))"""我是鸣人,我是要当火影的男人"""print("我是{1},我是要当{2}的男人".format(*a))#使用字典传参v={"name":"孙悟空","skill":"龟派气功"}print("我是{name},我的绝招是{skill}".format(**v))"""我是孙悟空,我的绝招是龟派气功"""#同时使用元组和字典传参name=["卡卡罗特","界王拳"]names={"nickname":"孙君","skill":"元气弹"}print("我是{0},我的绝招是{skill}".format(*name,**names))print("我是{nickname},我的绝招是{1}".format(*name,**names))#同时使用位置参数,元组,关键字参数,字典传参。#注意位置参数要在关键数参数前面a=["卡卡罗特"]dic={"name":"超级赛亚人"}print("我是{0},我也是{0},因为我是正义的战士,所以我变成了{name}".format("卡卡罗特",*a,**dic))"""我是卡卡罗特,是孙悟空,但不可改变的是我是正义的战士。"""
二.升华讲解
2.1复合字段名的使用
2.2 点号的使用
class Person:def __int__(self,name,addr): self.name=name self.addr=addrp=Person("孙悟空","包子山")#点号用法。传递位置参数。print("我是{0.name},家在{0.addr}".format(p))#当只有一个字段的时候,就可以省略数字print("我是{.name}}".format(p))#试一下传递文件对象的属性f=open("out.txt","w")print("文件名为:"{.name}.format(f))
#传递关键字print("我是{p.name},家在{p.addr}".format(p=p))print("我是{girl.name},家在{girl.addr}".format(girl=p))"""我是孙悟空,家在包子山。我是孙悟空,家在包子山。"""
2.4方括号的用法
mylist=["陈道明","www.chendaoming.cc"]print("网站名:{0[0],地址{0[1]}}".format(my_list))
2.5对齐字符串
print("{:>5}".format(1))#宽度为5,右对齐print(":>5".format(10))print(":>5".format(100))print(":>5".format(1000))"""输出结果为 1 101001000 """"
#正号表示正数print("{:+2f}".format(3.14))#+3.140000print("{:-2f}".format(-1))#-1.000000#不带小数的print("{:.0f}".format(3.23123131))#3#以逗号为分隔符的print("{:,}".format(100000))#100,000#表示一个百份比print("{:.2%}".format(0.25))#25%
推荐学习:python视频教程