1-2-05 字符串格式化
字符串格式化,使用跟便捷的形式实现字符串的拼接。
1 %
1.1 基本格式化操作
%d为 整形站位
字符串的占位符 %s
text = "我叫%s,今年18岁" %name
text = "我叫%s,今年%s岁" %("武沛齐",18)
text = "我叫%s,今年%s岁" %(name,age)
text = "我叫%s,今年%d岁" %(name,age) # %d为 整形站位 #这种方式用的比较多
#下面这种方式也有 但是用的不多
message = "%(name)s你什么时候过来呀?%(user)s今天不在呀。" % {"name": "死鬼", "user": "李杰"}
2 百分比
text = "兄弟,这个片我已经下载了90%了,居然特么的断网了"
text = "%s,这个片我已经下载了90%%了,居然特么的断网了" %"兄弟"
print(text)
一旦字符串格式化中存现百分比的显示,请一定要呀加 %% 以实现输出 %。
3 format(推荐)
text = "我叫{0},今年{1}岁".format("武沛齐",18)
text = "我叫{0},今年{1}岁,真是的姓名是{0}。".format("武沛齐",18)
text = "我叫{},今年18岁".format("武沛齐")
text = "我叫{},今年{}岁".format("武沛齐",18)
text = "我叫{},今年{}岁,真是的姓名是{}。".format("武沛齐",18,"武沛齐")
text = "我叫{n1},今年18岁".format(n1="武沛齐")
text = "我叫{n1},今年{age}岁".format(n1="武沛齐",age=18)
text = "我叫{n1},今年{age}岁,真是的姓名是{n1}。".format(n1="武沛齐",age=18)
text = "我叫{0},今年{1}岁"
data1 = text.format("武沛齐",666)
data2 = text.format("alex",73)
text = "我叫%s,今年%d岁"
data1 = text %("武沛齐",20)
data2 = text %("alex",84)
3 f
到Python3.6版本,更便捷。
text = f"嫂子喜欢{'跑步'},跑完之后满身大汗"
text = f"嫂子喜欢{action},跑完之后满身大汗"
text = f"嫂子的名字叫{name},今年{age}岁"
print(text)
#这个形式用这个比较多
text = f"嫂子的名字叫喵喵,今年{19 + 2}岁"
print(text)
#结果:
嫂子的名字叫喵喵,今年21岁
# 在Python3.8引入
text = f"嫂子的名字叫喵喵,今年{19 + 2=}岁"
print(text)
#结果:
嫂子的名字叫喵喵,今年19 + 2= 21岁
# 进制转换
v1 = f"嫂子今年{22}岁"
print(v1)
v2 = f"嫂子今年{22:#b}岁" # :#b 转换成二进制
print(v2)
v3 = f"嫂子今年{22:#o}岁" # :#o 转换成八进制
print(v3)
v4 = f"嫂子今年{22:#x}岁" # :#x 转换成十六进制
print(v4)
# 理解
text = f"我是{'alex'},我爱大铁锤"
name = "alex"
text = f"我是{name},我爱大铁锤"
name = "alex"
text = f"我是{ name.upper() },我爱大铁锤" # .upper() 转化成大写
# 输出:我是ALEX,我爱大铁锤