python 字符串format

问:这是控制格式的么?

答案:是的

举个例子:

print("大家好,今天是星期1,明天是星期2,后天是星期3")
s1 = "大家好,今天是星期{},明天是星期{},后天是星期{}".format(1,2,3)
print(s1)
大家好,今天是星期1,明天是星期2,后天是星期3
大家好,今天是星期1,明天是星期2,后天是星期3

基本上的理解,就是,这种括号{}里面的东西我先不写,由format中对应的数字或者字符来填入。
当然后面的数字也可以写成字符串。

这个东西可以干什么用?

我觉得吧,如果,你在输出很多相近的信息的时候,可以通过这种方法来减少代码量。同时代码显得更加的工整。
举个例子:

name = ["张三","李四","王五","你六","我六","大家六"]
age = ["15","16","18","17","20","26"]
sex = ["man","woman","man","woman","man","man"]
for i in range(0,6):
    print("我们班级中名字叫做{}的,年龄是{},性别是{}".format(name[i],age[i],sex[i]))

我们班级中名字叫做张三的,年龄是15,性别是man
我们班级中名字叫做李四的,年龄是16,性别是woman
我们班级中名字叫做王五的,年龄是18,性别是man
我们班级中名字叫做你六的,年龄是17,性别是woman
我们班级中名字叫做我六的,年龄是20,性别是man
我们班级中名字叫做大家六的,年龄是26,性别是man

这样用来一一对应。显得代码还比较工整。

还能怎么用?

实际上,前面的{}中如果我们不填入数据,那么默认是按照0,1,2,……这种顺序来排列的,后面的format中也是从前到后依次是0,1,2,……这样对应。

如果我们换一下顺序:

s3 = "大家好,今天是星期{1},明天是星期{0},后天是星期{2}"
print(s3.format(1,2,3))
大家好,今天是星期2,明天是星期1,后天是星期3

注意:
括号中的数字代表的不是数字本身,而是下标,也就是说,0代表第一个数据,1代表后面第二个数据,2代表后面第三个数据。
在这个里面0指的就是format中的第一个元素,1指的就是format中的第二个元素,2指的就是format中的第三个元素。
所以输出的结果就是上面的样子。

format的使用方法,类似于qt中的arg方法,有点像,但又不那么像!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值