美文网首页
Python格式化字符串打印

Python格式化字符串打印

作者: 10点睡7点起 | 来源:发表于2018-03-31 15:52 被阅读0次

    格式化打印

    • 可以对字符串格式化处理的手段:
      • 字符串方法
      • 类C风格的%打印输出方法
      • Python特有的format函数

    Format函数

    • {}:占位符,等待给定替代内容
    • "{} ... {}".format(ele1,...,elen): 元素顺序的赋值给占位符
      • 要求占位符数量不多于元素数量
    • "{3} ... {n}".format(ele1,...,elen):按所以赋值给占位符
      • 如果需要使用索引,必须对所有占位符给定索引号
    • "{}...{} {key}".format(ele1...,key=va):占位符中使用key值
      • 字典类型只能在format函数的后面出现
    • {{}}:表示打印输出{}
    • "{n[m]}".format([list]):n表示对象的索引,[m]表示访问元素
    • "{n.x} {n.y}".format(p):n表示对象索引,.x .y表示对象的属性
    • {mm:ss}:标准的打印输出设置
      • mm: 表示变量索引或者key
      • ss: 表示设置的格式
      • 格式字符

    e.g.

    • 格式对齐
        '{0}*{1}={2:<2}'.format(3,2,2*3)  # 左对齐,宽度为2
        '{0}*{1}={2:<02}'.format(3,2,2*3) # 左对齐,宽度为2,用0填充
        '{0}*{1}={2:>02}'.format(3,2,2*3) # 右对齐,宽度为2,用0填充
        '{:^30}'.format('centered')   # 居中,宽度为30,空格填充
        '{:*^30}'.format('centered')  # 居中,宽度为30,*填充
    
    • 进制格式转换
        # 格式转化(十六进制有大小写之分)
        "int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}".format(42)
        # 格式转换并打印进制标记
        "int: {0:d}; hex: {0:#x}; oct: {0:#o}; bin: {0:#b}".format(42)
        # 大写十六进制表示、宽度为2、用0填充
        octets = [192, 168, 0, 1]
        '{:02X}{:02X}{:02X}{:02X}'.format(*octets)
        # *表示对序列进行解包
    

    相关文章

      网友评论

          本文标题:Python格式化字符串打印

          本文链接:https://www.haomeiwen.com/subject/brwgcftx.html