鱼C论坛

 找回密码
 立即注册
查看: 3465|回复: 0

[学习笔记] 015字符串:格式化

[复制链接]
发表于 2017-6-19 22:16:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
格式化字符串:按照统一的规格去输出字符串
1.字符串的format()函数
1)通过花括号{}来表明字符串中需要格式化的位置,花括号内的值可以是位置参数(0,1,2,3等)或关键字参数,当花括号内的值为数字时表明是位置参数,0代表format()小括号内的第一个的值;
  1. >>> "{0} love {1}.{2}".format("I","FishC","com")
  2. 'I love FishC.com'
复制代码

2)当花括号内的值为其他非数字字符时,表明是关键字参数,在format()小括号内必须通过赋值操作体现出来;
  1. >>> "{a} love {b}.{c}".format(a="I",b="FishC",c="com")
  2. 'I love FishC.com'
复制代码

3)支持两种混用,但format()内的位置参数对应值必须放左边;
  1. >>> "{0} love {b}.{c}".format("I",b="FishC",c="com")
  2. 'I love FishC.com'
复制代码

4)在字符串中花括号表示其内的内容是要被替换的,如果想让花括号和其内的内容是作为一个正常字符串处理的话,必须在外面再加一层花括号,这种形式类似转义字符前面加上转义字符表示其本身一样;
  1. >>> "{{0}}".format("不打印")
  2. '{0}'
复制代码

5)位置参数直接跟‘:’表明后面要跟一个字符串格式化操作符;
  1. >>>'{0:.1f}{1}'.format(27.658,'GB')    #.1f表明是格式化定点数且保留小数点后1位
  2. '27.7GB'
复制代码


2.字符串格式化操作符
  1. >>> '%c %c %c' % (97,98,99)         # %c格式化字符及其ASCⅡ码
  2. 'a b c'
  3. >>> '%s' % 'I love FishC.com'       # %s格式化为字符串
  4. 'I love FishC.com'
  5. >>> '%d + %d = %d' % (4, 5, 4+5)    # %d格式化为十进制整数
  6. '4 + 5 = 9'
  7. >>> '%o' % 10                       # %o格式化为无符号八进制数
  8. '12'
  9. >>> '%x' % 10                       # %x格式化为无符号十六进制数
  10. 'a'
  11. >>> '%X' % 10                       # %X格式化为无符号十六进制数(大写)
  12. 'A'
  13. >>> '%f' % 27.658                   # %f格式化为定点数,默认小数点后六位
  14. '27.658000'
  15. >>> '%e' % 27.658                   # %e用科学计数法格式化定点数
  16. '2.765800e+01'
  17. >>> '%E' % 27.658                   # %E用科学计数法格式化定点数
  18. '2.765800E+01'
  19. >>> '%g' % 27.12345500000000000000  # %g根据值的大小决定使用%f或%e
  20. '27.1235'                  
  21. >>> '%G' % 2712345500000000000000000  # %G根据值的大小决定使用%F或%E
  22. '2.71235E+24'
复制代码
      

3.格式化操作符辅助指令   
对操作符功能进行补充定义的,一般放在操作符前面      
1)m.n   m是显示的最小总宽度,n是小数点后的位数;
  1. >>> '%10d' % 5
  2. '         5'
  3. >>> '%5.1f' % 27.658
  4. ' 27.7'
复制代码

2)‘-’代表左对齐,即字符串内容在最左边,补足的空格插入到右侧补足;
  1. >>> '%-10d' % 5
  2. '5         '
复制代码

3)‘+’则代表在正数前面加一个‘+’号;
  1. >>> '%+d' % 5
  2. '+5'
  3. >>> '%+d' % -5
  4. '-5'
复制代码

4)‘#’在八进制前显示o0,在十六进制前显示oX或ox;
  1. >>> '%#o' % 10
  2. '0o12'
  3. >>> '%#X' % 108
  4. '0X6C'
  5. >>> '%#d' % 10        #十进制什么也不显示
  6. '10'
复制代码

5)‘0’显示的数字前填充‘0’代替空格;
  1. >>> '%010d' % 5
  2. '0000000005'
复制代码

评分

参与人数 1鱼币 +5 收起 理由
小甲鱼 + 5 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 02:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表