博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串格式化复习笔记
阅读量:4352 次
发布时间:2019-06-07

本文共 2390 字,大约阅读时间需要 7 分钟。

Python的字符串格式化有两种方式: 百分号方式、format方式

Python的字符串格式化有两种方式: 百分号方式、format方式。

1、百分号方式(中括号内的参数是可选的。)

%[(name)][flags][width].[precision]typecode

  • (name)    用于选择指定的key(重点) flags          可选,可供选择的值有:
    • +       右对齐;正数前加正好,负数前加负号;
    • -        左对齐;正数前无符号,负数前加负号;
    • 空格    右对齐;正数前加空格,负数前加负号;
    • 0        右对齐;正数前无符号,负数前加负号;用0填充空白处
  • width        占有的宽度
  • precision   小数点后保留的位数(重点)
  • typecode    必须的参数

            对象

    • s,获取传入对象的__str__方法的返回值,并将其格式化到指定位置(重点)
    • r,获取传入对象的__repr__方法的返回值,并将其格式化到指定位置

            进制

    • c,整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i <= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
    • o,将整数转换成 八  进制表示,并将其格式化到指定位置
    • x,将整数转换成十六进制表示,并将其格式化到指定位置
    • d,将整数、浮点数转换成 十 进制表示,并将其格式化到指定位置

            计数法

    • E、e,将整数、浮点数转换成科学计数法,并将其格式化到指定位置
    • F、f, 将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
    • G、g自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置

            特殊:

    • %,当字符串中存在格式化标志时,需要用 %%表示一个百分号(注意的地方)

            常用例子:

      

1 g1 = "i am %s age %d" % ("handsomeboy", 18)2 3 g2 = "i am %(pp).2f" % {
"pp": 23.425556, }4 5 g3= "i am %(name)s age %(age)d" % {
"name": "handsomeboy", "age": 16}
View Code

 

 

  • 2、Format方式

    [[fill]align][sign][#][0][width][,][.precision][type]

      • fill           空白处填充的字符
      • align        对齐方式(需配合width使用)
        • <,内容左对齐
        • >,内容右对齐(默认)
        • =,内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。 即使:符号+填充物+数字
        • ^,内容居中
        sign        有无符号数字
        • +,正号加正,负号加负;
        •  -,正号不变,负号加负;
        • 空格 ,正号空格,负号加负;
      • #            对于二进制、八进制、十六进制,如果加上#,会显示 0b/0o/0x,否则不显示
      • ,           为数字添加分隔符,如:1,000,000
      • width       格式化位所占宽度
      • .precision 小数位保留精度
      • type         格式化类型
        • 传入” 字符串类型 “的参数
          • s,格式化字符串类型数据
          • 空白,未指定类型,则默认是None,同s
        • 传入“ 整数类型 ”的参数
          • b,将10进制整数自动转换成2进制表示然后格式化
          • c,将10进制整数自动转换为其对应的unicode字符
          • d,十进制整数
          • o,将10进制整数自动转换成8进制表示然后格式化;
          • x,将10进制整数自动转换成16进制表示然后格式化(小写x)
          • X,将10进制整数自动转换成16进制表示然后格式化(大写X)
        • 传入“ 浮点型或小数类型 ”的参数
          • e, 转换为科学计数法(小写e)表示,然后格式化;
          • E, 转换为科学计数法(大写E)表示,然后格式化;
          • f , 转换为浮点型(默认小数点后保留6位)表示,然后格式化;
          • F, 转换为浮点型(默认小数点后保留6位)表示,然后格式化;
          • g, 自动在e和f中切换
          • G, 自动在E和F中切换
          • %,显示百分比(默认显示小数点后6位)

                         常用例子:

          

1 g1 = "i am {}, age {}, {}".format("seven", 18, 'jhon')#位置 2    3 g2 = "i am {}, age {}, {}".format(*["seven", 18, 'jhon'])#解包 4    5 g3= "i am {0}, age {1}, really {0}".format("seven", 18)#数字 6 g4 = "i am {name}, age {age}, really {name}".format(name="seven", age=18)#字典 7  g5 = "i am {0[0]}, age {0[1]}, really {0[2]}".format([1, 2, 3], [11, 22, 33])#索引方式 8    9 g6 = "i am {:s}, age {:d}, money {:f}".format("seven", 18, 88888.1)10   11 g7 = "i am {:s}, age {:d}".format(*["seven", 18])12   13 g8 = "i am {name:s}, age {age:d}".format(name="seven", age=18)14 15 g9= "numbers: {num:b},{num:o},{num:d},{num:x},{num:X}, {num:%}".format(num=15)
View Code

 

转载于:https://www.cnblogs.com/yongliang/p/6486561.html

你可能感兴趣的文章
div:给div加滚动栏 div的滚动栏设置
查看>>
java随机函数使用方法Random
查看>>
链表中环的入口结点
查看>>
凤姐讲学英语
查看>>
ActionBar
查看>>
5种方法实现数组去重
查看>>
2~15重点语法
查看>>
flask中的CBV,flash,Flask-Session,WTForms - MoudelForm,DBUtils 数据库连接池
查看>>
最近整理的提供免费代理列表的几个网站
查看>>
探偵ガリレオー転写る2
查看>>
快速排序算法C++实现[评注版]
查看>>
七尖记
查看>>
[翻译] VBFPopFlatButton
查看>>
PlaceholderImageView
查看>>
Ubuntu14.04一直进入guest session解决办法
查看>>
BZOJ2462[Beijing2011]矩阵模板(二维Hash)
查看>>
SAP(最短增广路算法) 最大流模板
查看>>
用极大化思想解决矩形问题学习笔记
查看>>
Django REST Framework 简单入门
查看>>
Hibernate中fetch和lazy介绍
查看>>