print函数之format字符串格式化方法的使用与学习笔记。

一、映射关系

(1)“映射”示例,以下通过位置举例说明:

[+]Example_1:

>>> print("{0}:{1}".format('name','age'))
name:age [+]Example_2: >>> print("{}:{}".format("name","age"))
name:age [+]Example_3: >>> print("{0}:{1}:{0}".format("name","age"))
name:age:name

字符串的format函数可以接受不限个参数,位置可以不按顺序,可以不用或者用多次,不过2.6不能为空{},2.7才可以。

(2)通过关键字参数格式化

>>> print("{name}:{age}".format(age=18,name="Michael"))
Michael:18

(3)通过对象属性

class Person:
def __init__(self,name,age):
self.name,self.age = name,age
def __str__(self):
return 'This guy is {self.name},is {self.age} old'.format(self=self)
In [2]: str(Person('kzc',18))
Out[2]: 'This guy is kzc,is 18 old'

(4)通过format实现列表的字符串化

>>> name = ['Jack','Michael']
>>> print("{0[1]},{0[0]}".format(name))
Michael,Jack

  有了以上这些便捷的“映射”方式,我们就有了的格式化利器。

  基本的Python知识告诉我们,list和tuple可以通过“打散”成普通参数给函数,而dict可以打散成关键字参数给函数(通过和*)。所以可以轻松的传个list/tuple/dict给format函数。非常灵活。

二、格式限定符

format格式化,它有着丰富的的“格式限定符”(语法是{}中带:号),

比如“:”、“填充与对齐”、“填充常跟对齐一起使用”;

^、<、>分别是居中、左对齐、右对齐,后面为“限定宽度”;

注意:“:”冒号后面紧跟填充的字符,只能是一个字符;不指定的话,默认是用空格填充

比如

(1)居左、居中,居右显示

>>> print("####{:<}####".format("ABCD"))            #居左显示,右边空出4个字符(填充字符默认为空格)
####ABCD ####
>>> print("####{:^8}####".format("ABCD"))
#### ABCD ####                  #居中显示,左右两边各空出2个字符(填充字符默认为空格)
>>> print("####{:>8}####".format("ABCD"))
#### ABCD####                  #右居显示,左边空出4个字符(填充字符默认为空格)
>>>

(2) 使用填充字符“+”举例“居左、居中,居右”显示

>>> print("####{:+>8}####".format("ABCD"))
####++++ABCD####
>>> print("####{:+^8}####".format("ABCD"))
####++ABCD++####
>>> print("####{:+<}####".format("ABCD"))
####ABCD++++####

(3)精度与类型f结合使用:

>>> print("{:.3f}".format(3.1415126))
3.142

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

(4)其他类型
主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制。

>>> print("{:b}".format(123456))
11110001001000000
>>> print("{:d}".format(123456))
123456
>>> print("{:o}".format(123456))
361100
>>> print("{:x}".format(123456))
1e240

(5)用“,”号作为金额的千位分隔符的格式化。

>>> print("{:,}".format(123e10))
1,230,000,000,000.0

摘了之:http://blog.csdn.net/handsomekang/article/details/9183303

python 之format字符串格式化的更多相关文章

  1. Python之format字符串格式化

    1.字符串连接 >>> a = 'My name is ' + 'Suen' >>> a 'My name is Suen' >>> a = 'M ...

  2. Python中用format函数格式化字符串的用法

    这篇文章主要介绍了Python中用format函数格式化字符串的用法,格式化字符串是Python学习当中的基础知识,本文主要针对Python2.7.x版本,需要的朋友可以参考下   自python2. ...

  3. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  4. 第3.11节 Python强大的字符串格式化新功能:format字符串格式化的格式控制

                                                第3.11节 format字符串格式化的格式控制 一.    引言 上节介绍了四种format进行字符串格式化的 ...

  5. 第3.10节 Python强大的字符串格式化新功能:使用format字符串格式化

    一.    引言 前面两节介绍的字符串格式化方法,都有其本身对应的缺陷,老猿不建议大家使用,之所以详细介绍主要是考虑历史代码的兼容性,方便大家理解前人留下的代码.老猿推荐大家新编码时使用format方 ...

  6. Python中format_map与format字符串格式化的区别

    在Python3中使用format和format_map方法都可以进行字符串格式化,但format是一种所有情况都能使用的格式化方法,format_map仅使用于字符串格式中可变数据参数来源于字典等映 ...

  7. python 中的字符串格式化

    python 中的字符串格式化 %方式的调用 1.格式化代码 代码 意义 s 字符串,使用str r 字符串,使用repr不使用str c 字符 d 十进制的数字 i 整数 u 无符号整数 o 八进制 ...

  8. string.Format字符串格式化说明(转)

    string.Format字符串格式化说明 www.111cn.net 编辑:Crese 来源:转载   先举几个简单的应用案例: 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统 ...

  9. Python中用format函数格式化字符串

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存. 1.百分号方式 语法:%[( ...

随机推荐

  1. python斐波拉契数列

    def fib(max): n, a, b = 0, 0, 1 while n < max: print(b) a, b = b, a + b n = n + 1 return 'done' 注 ...

  2. Linux命令总结_命令执行顺序

    有时候,我们需要一个命令执行完之后再去执行另一个命令,使用 &&和 ||可以完成 这样的功能,相应的命令可以是系统命令或shell脚本 Shell还提供了在当前shell或子shell ...

  3. eclipse修改workspace

    Eclipse是一款很强的Java IDE,我们在开始的时候,往往设定了默认的workspace,当用久在之后,我们可能要去更改一下workspace的位置,但是在启动的时候已经不会显示更改了.下面有 ...

  4. 关于从request对象中获取路径的问题

    从request对象中获取路径的问题:例如: 项目名为:tmall_web     请求的servlet名为:loginServlet 示例代码如下: @Override protected void ...

  5. Sybase.在PowerDesigner中如何添加-约束

    Sybase.在PowerDesigner中如何添加-约束 资料 2010-06-23 08:57:09 阅读21 评论0   字号:大中小 订阅 唯一约束 唯一约束与创建唯一索引基本上是一回事,因为 ...

  6. MS SQL PIVOT数据透视表

    以前曾经做过练习<T-SQL PIVOT 行列转换>https://www.cnblogs.com/insus/archive/2011/03/05/1971446.html 今天把拿出来 ...

  7. 2014 Noip提高组 Day2

    P2038 无线网络发射器选址 [题目描述] 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的129 条东西向街道和129 ...

  8. [Xcode 实际操作]七、文件与数据-(3)创建文本文件、属性列表文件、图片文件

    目录:[Swift]Xcode实际操作 本文将演示如何创建各种类型的文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class V ...

  9. 基于canvas绘图 缩放 做标记

    技术要点: 1.img 绘制到canvas 2.绘制完成以后进行拖拽,缩放 3.使用canvas画图,在绘制的img上进行标记划线,当然可以实现跟过功能,例如百度地图的功能,做单个标记,区域标记等. ...

  10. es备份索引

    1.解压https://github.com/medcl/esm-abandonedhttps://github.com/medcl/esm-abandoned/releases tar xf lin ...