• python 字符串format


    问:这是控制格式的么?

    答案:是的

    举个例子:

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

    基本上的理解,就是,这种括号{}里面的东西我先不写,由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]))
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    我们班级中名字叫做张三的,年龄是15,性别是man
    我们班级中名字叫做李四的,年龄是16,性别是woman
    我们班级中名字叫做王五的,年龄是18,性别是man
    我们班级中名字叫做你六的,年龄是17,性别是woman
    我们班级中名字叫做我六的,年龄是20,性别是man
    我们班级中名字叫做大家六的,年龄是26,性别是man
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

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

    还能怎么用?

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

    如果我们换一下顺序:

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

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

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

  • 相关阅读:
    python入门系列(1)—— 环境安装
    Docker学习-Dockerfile概述与用法
    电商项目part10 高并发缓存实战
    .NET服务治理之限流中间件-FireflySoft.RateLimit
    干了三年外包。。。忘了什么是CICD。。。
    2022年山东研发费用补助多少?
    TypeError: __init__() got an unexpected keyword argument ‘pretrained_cfg‘
    Mysql 日志
    47. 从零开始学springboot: spel结合redisson实现动态参数分布式锁
    QSqlTableModel使用简介
  • 原文地址:https://blog.csdn.net/Black_Friend/article/details/127532943