阅读mattkang在csdn中的博客《飘逸的python - 增强的格式化字符串format函数》所做笔记

自从python2.6开始,新增了一种格式化字符串的函数str.format(),他通过{}和:来代替%。

1、映射实例

In[1]: '{0},{1}'.format('abc', 18)
Out[1]: 'abc,18' In[2]: '{}'.format(18)
out[2]: 18 In[3]: '{1},{0},{1}'.format('abc', 123)
out[3]: '123,abc,123' In[4]: '{name}, {age}'.format(age=18, name = 'abc')
out[4]: 'abc, 18' In[5]: p = ['abc', 18]
In[6]: '{0[0]}, {0[1]}'.format(p)
out[6]: 'abc, 18'

2、格式限定符

它有着丰富的格式限定符(语法是{}中带:), 比如:

填充与对齐:

填充欲对其一起使用

^, <, >分别是居中,左对齐,右对齐,后跟宽度

:后面带填充的字符, 只能是一个字符,不指定的话默认用空格填充

比如:

In[7]: '{:>8}'.format('')
out[7]: '' In[8]: '{:0>8}'.format('')
out[8]: ''

精度与类型

精度常跟类型f一起使用

In[9]: '{:.2f}'.format(321.3456)
out[9]: '321.34'

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

其他类型

主要就是进制, b, d, o, x分别是二进制、十进制、八进制和十六进制

In[10]: '{:b}'.format(17)
out[10]: '' In[11]: '{:d}'.format(17)
out[11]: '' In[12]: '{:o}'.format(17)
out[12]: ''

用,号还能用来做金额的千位分隔符

In[13]: '{:,}'.format(1234567890)
out[13]: '1,234,567,890'

Python 的格式化字符串format函数的更多相关文章

  1. 飘逸的python - 增强的格式化字符串format函数

    自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 语法 它通过{}和 ...

  2. (转)飘逸的python - 增强的格式化字符串format函数

    原文:https://blog.csdn.net/handsomekang/article/details/9183303 Python字符串格式化--format()方法-----https://b ...

  3. 【Python开发】增强的格式化字符串format函数

    自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 语法 它通过{}和 ...

  4. 格式化字符串format函数

    自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓威力十足.那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱. 语法 它通过{}和 ...

  5. 增强的格式化字符串format函数

    http://blog.csdn.net/handsomekang/article/details/9183303 自python2.6开始,新增了一种格式化字符串的函数str.format(),可谓 ...

  6. python - 增强的格式化字符串format函数

    语法 它通过{}和:来代替%. “映射”示例 通过位置 In [1]: '{0},{1}'.format('kzc',18) Out[1]: 'kzc,18' In [2]: '{},{}'.form ...

  7. python格式化字符串format函数

    1. format可以接受无限个的参数,位置可以不按顺序: In [1]: "{} {}".format("hello","world") ...

  8. python_108_格式化字符串format函数

    #通过关键字映射 print('I am {name},age {age}'.format(name='qiqi齐',age=18))#I am qiqi齐,age 18 dictory={'name ...

  9. Python 【格式化字符串】

    print('血量:'+str(player_life)+' 攻击:'+str(player_attack)) 第一种格式化字符串 print('血量:%s 攻击:%s' % (player_life ...

随机推荐

  1. word-wrap,word-break,text-wrap的区别

    今晚看到了无双老师关于word-wrap,word-break区别的讲解  http://www.cnblogs.com/2050/archive/2012/08/10/2632256.html 受益 ...

  2. 有关<action android:name="android.intent.action.DELETE" />

    今天看一个病毒样本时遇到了这个Action,位于一个Activity节点下 通过真机测试与导师指导发现,这个Action的作用就相当于把其所在的应用加入到了“系统卸载程序”列表,当你卸载系统中的任一应 ...

  3. opencv拼接相关1

    这里面都是一些比较杂的东西,没什么实际意义.主要是为了,后面能跑一个程序: Stitcher: 抠细节: http://docs.opencv.org/2.4.2/modules/stitching/ ...

  4. linux 多核

    posix threading programming beej's guide to unix ipc the gnu c library: virtual memory allocation an ...

  5. 最大公约数与欧几里得(Euclid)算法

    ---恢复内容开始--- 记a, b的最大公约数为gcd(a, b).显然, gcd(a,b)=gcd(|a|,|b|). 计算最大公约数的Euclid算法基于下面定理: [GCD递归定理]对于任意非 ...

  6. my_vimrc

    " ----------------- Author: Ruchee" ----------------- Email: my@ruchee.com" --------- ...

  7. nginx支持url的PATHINFO

    fastcgi_split_path_info ^(.+?\.php)(/.*)$; set $path_info $fastcgi_path_info; fastcgi_param PATH_INF ...

  8. (原创)openvswitch实验连载2-cisco模拟器IOU-Web安装及网络环境配置

    IOU的使用可以选择自己到官网https://docs.google.com/file/d/0B2AgRhS2cfxCQ01tN2NrQ0pvNUk/edit下载iou-web 软件,然后部署在lin ...

  9. 20160504-hibernate入门

    关系型数据库与面向对象 模型不匹配(阻抗不匹配) Java面向对象语言,对象模型,其主要概念有:继承.关联.多态等:数据库是关系模型,其主要概念有:表.主键.外键等. 解决办法: 1使用JDBC手工转 ...

  10. MyEclipse build path修改问题