• python格式化字符串format函数


    format函数主要是用来格式化字符串,达到我们想要的输出形式。以下分别对4种格式化形式进行举例说明,关于format函数的其他用法请读者自行查阅。

    1. 通过位置映射

    #通过位置映射
    c='xx{0}xx{1}xx{1}'.format("123","hello")
    print(c)
    
    输出:xx123xxhelloxxhello

    这里的0和1分别表示format函数中参数的位置,0位置代表的就是”123”,1位置代表的就是”hello”,把0和1的位置分别用”123”和”hello”去填充(映射)。xx的位置可以随便写你想要的字符串,也可以为空,例如’{0}{1}’.format(“123”,”hello”)返回的就是123hello,千万别忘了外面的两个单引号,当然了,换成两个双引号也可以。

    c="xx{}xx{}".format("123","hello")
    print(c)
    
    输出:xx123xxhello

    如果所有花括号{ }里面为空的话,那么{ }的个数就不能随便写了,最多不能超过后面的参数的个数,例如本例中format函数里面是2个参数”123”和”hello”,那么{ }最多只能写2个,也可以一个都没有,如果是写一个{ }的话,它会映射为”123”,因为是按照顺序来的。有人可能会问了,可不可以这样写’{1}{ }’.format(“123”,”hello”),答案是不能,这样的话后面那个{}就不知道该映射那个参数了。所以要为空都为空,要不为空都不为空。

    2. 通过关键字映射

    #通过关键字映射
    e='name={n}xxxage={a}xxxage={a}'.format(n="zhangkang",a=24)
    print(e)
    
    输出:name=zhangkangxxxage=24xxxage=24

    这个应该简单易懂吧,{ }里面必须填后面的关键字(参数名)。

    3. 通过下标映射

    p=["zhang","kang",24]
    f='{0[0]}xxx{0[1]}xxx{0[2]}xxx{0[1]}'.format(p)
    print(f)
    
    输出:zhangxxxkangxxx24xxxkang

    这里中括号里面的0,1,2代表的是列表p中元素的位置,当然把列表换成元组也行。每个中括号前面的0必须得写,至于为啥我也不知道。

    4. 通过对象属性映射

    #通过对象的属性映射
    class person:
        def __init__(self,name,age):
            self.name=name
            self.age=age
    
    def getMes(a):
        return 'his name is {b.name} and age is {b.age}'.format(b=a)
    
    p=person("zhang",24)
    print(getMes(p))

    这个自己体会吧!

  • 相关阅读:
    hdu 5504 GT and sequence
    解决:Incorrect line ending: found carriage return ( ) without corresponding newline ( )
    hdu 5501 The Highest Mark(贪心+01背包)
    web开发学习之路是否有尽头
    2016年后web开发趋势是什么?
    使用 jQuery Mobile 与 HTML5 开发 Web App 系列文章目录
    web开发微信文章目录
    现代web开发需要学习的15大技术
    移动前端重构实战系列
    什么鬼,又不知道怎么命名class了
  • 原文地址:https://www.cnblogs.com/neuzk/p/9476445.html
Copyright © 2020-2023  润新知