APP
系统平台
  • 建站知识
  • 联系我们
  • 咨询热线 :
    028-86922220

    浩晨众云网站建设,新征程启航

    为企业提供网站建设、域名注册、服务器等服务

    Python格式化字符串%与format的区别

    简介

    Python中格式化字符串目前有两种方法:%和format

    成都创新互联公司专业为企业提供开州网站建设、开州做网站、开州网站设计、开州网站制作等企业网站建设、网页设计与制作、开州企业网站模板建站服务,十多年开州做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

    Python2.6引入了format这个格式化字符串的方法

    区别

    %

    # 定义一个坐标值
    c = (250, 250)
    # 使用%丑陋的格式化...
    s1 = "敌人坐标:%s" % (c,)
    # 因为c是一个元祖,所以%格式化时后面不能只写一个c

    format

    # 定义一个坐标值
    c = (250, 250)
    # 使用format格式化
    s2 = "敌人坐标:{}".format(c)

    3.6的新特性f-strings

    name = "DZM"
    age = 18
    f"My name is {name}.I'm {age}"
    # "My name is DZM.I'm 18"

    常用的format用法

    通过位置

    print('{0},{1},{0}'.format('dzm', 18))
    # dzm,18,dzm

    通过关键字

    不依赖位置

    print('my name is {x},my age is {y}'.format(x='dzm',y=18))
    # my name is dzm,my age is 18
    # 或者
    data = {"name": "DZM", "age": 18}
    print("Name:{name}, Age:{age}".format(**data))
    # 'Name:DZM, Age:18'

    通过对象属性

    class Person():
        def __init__(self, name, age):
            self.name = name
            self.age = age
    
        def __str__(self):
            return "{self.name} is {self.age} years old.".format(self=self)
    
    dzm = Person("dzm", 18)
    print(dzm)
    # dzm is 18 years old.

    通过下标

    data = [11, 22]
    print("{0[0]} ----- {0[1]}".format(data))
    # 11 ----- 22

    填充与对齐

    填充常跟对齐一起使用
    ^、<、>分别是居中、左对齐、右对齐,后面带宽度
    :号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充。

    # 18前面用10个空格填充
    print("{:>10}".format('18'))
    '        18'
    # 18前面用10个0填充
    "{:0>10}".format('18')

    zfill()方法
    Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0。
    zfill()方法语法:str.zfill(width)
    参数width指定字符串的长度。原字符串右对齐,前面填充0。
    返回指定长度的字符串。

    "18".zfill(10)
    # '0000000018'

    精度与类型f

    其中.4表示长度为4的精度,f表示float类型。

    print("{:.4f}".format(3.1415926))
    # 3.1416

    其他进制
    b、d、o、x分别是二进制、十进制、八进制、十六进制

    {:b}".format(18)
    '10010'

    千位分隔符

    "{:,}".format(1234567890)
    '1,234,567,890'

    参考文章:https://www.cnblogs.com/liwenzhou/p/8570701.html


    本文标题:Python格式化字符串%与format的区别
    标题网址:http://cdjierui.cn/article/gjcche.html
    在线咨询
    服务热线
    服务热线:028-86922220
    TOP