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

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

它通过{}和:来代替%。
“映射”示例

通过位置

In [1]: '{0},{1}'.format('kzc',18)
Out[1]: 'kzc,18'
In [2]: '{},{}'.format('kzc',18)
Out[2]: 'kzc,18'
In [3]: '{1},{0},{1}'.format('kzc',18)
Out[3]: '18,kzc,18'

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

In [5]: '{name},{age}'.format(age=18,name='kzc')
Out[5]: 'kzc,18'

通过对象属性

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'

通过下标

In [7]: p=['kzc',18]
In [8]: '{0[0]},{0[1]}'.format(p)
Out[8]: 'kzc,18'

有了这些便捷的“映射”方式,我们就有了偷懒利器。基本的python知识告诉我们,list和tuple可以通过“打散”成普通参数给函数,而dict可以打散成关键字参数给函数(通过和*)。所以可以轻松的传个list/tuple/dict给format函数。非常灵活。
格式限定符

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

填充与对齐
填充常跟对齐一起使用
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
比如

In [15]: '{:>8}'.format('189')
Out[15]: '   189'
In [16]: '{:0>8}'.format('189')
Out[16]: '00000189'
In [17]: '{:a>8}'.format('189')
Out[17]: 'aaaaa189'

精度与类型f
精度常跟类型f一起使用

In [44]: '{:.2f}'.format(321.33345)
Out[44]: '321.33'

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

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

In [54]: '{:b}'.format(17)
Out[54]: '10001'
In [55]: '{:d}'.format(17)
Out[55]: '17'
In [56]: '{:o}'.format(17)
Out[56]: '21'
In [57]: '{:x}'.format(17)
Out[57]: '11'

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

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

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索python
format格式化字符串、python format 格式化、python中format的用法、python format用法、python3 format用法,以便于您获取更多的相关知识。

时间: 2024-10-08 10:11:10

Python中用format函数格式化字符串的用法_python的相关文章

Python中用startswith()函数判断字符串开头的教程_python

函数:startswith() 作用:判断字符串是否以指定字符或子字符串开头 一.函数说明语法:string.startswith(str, beg=0,end=len(string))        或string[beg:end].startswith(str)   参数说明: string:  被检测的字符串 str:      指定的字符或者子字符串.(可以使用元组,会逐一匹配) beg:    设置字符串检测的起始位置(可选) end:    设置字符串检测的结束位置(可选) 如果存在

Python中用split()方法分割字符串的使用

  这篇文章主要介绍了在Python中用split()方法分割字符串的使用介绍,是Python入门中的基础知识,需要的朋友可以参考下 split()方法返回的字符串中的所有单词的列表,使用str作为分隔符(如果在未指定的所有空格分割),可选择限当前分割为数量num. 语法 以下是split()方法的语法: ? 1 str.split(str="", num=string.count(str)). 参数 str -- 这是任何分隔符,默认情况下是空格. num -- 这是要分割的行数.

python通过floor函数舍弃小数位的方法_python

本文实例讲述了python通过floor函数舍弃小数位的方法.分享给大家供大家参考.具体分析如下: python中可以通过math库的floor函数来舍弃浮点数后面的小数位 import math print(math.floor( x )) 例如:x=1.2,返回1.0 其返回值为浮点数,如果希望返回整数,可以写成: import math #from jb51.net print(int(math.floor( x ))) 输出结果:1 希望本文所述对大家的Python程序设计有所帮助. 以

Python内置函数Type()函数一个有趣的用法_python

今天在网上看到type的一段代码 ,然后查了一下文档,才知道type还有三个参数的用法. http://docs.python.org/2/library/functions.html 以前只是知道type可以检测对象类型.然后发现了一个有趣的用法. 复制代码 代码如下: def println(self): a = 1 + 1 print "%s,%s" % (self.aa, a) A = type('A',(),{'aa':'print a', 'println': printl

Python中针对函数处理的特殊方法_python

很多语言都提供了对参数或变量进行处理的机制,作为灵活的Python,提供了一些针对函数处理的特殊方法filter(function, sequence): 对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuplemap(function, sequence) : 对sequence中的item依次执行function(item),见执行结果组成一个Listreduce(function, sequence, st

浅析Python中yield关键词的作用与用法_python

前言 为了理解yield是什么,首先要明白生成器(generator)是什么,在讲生成器之前先说说迭代器(iterator),当创建一个列表(list)时,你可以逐个的读取每一项,这就叫做迭代(iteration). >>> mylist = [1, 2, 3] >>> for i in mylist : ... print(i) 1 2 3 mylist 是一个可迭代的对象.当使用一个列表生成式来建立一个列表的时候,就建立了一个可迭代的对象: >>>

Python常用随机数与随机字符串方法实例_python

随机整数: 复制代码 代码如下: >>> import random >>> random.randint(0,99) 21 随机选取0到100间的偶数: 复制代码 代码如下: >>> import random >>> random.randrange(0, 101, 2) 42 随机浮点数: 复制代码 代码如下: >>> import random >>> random.random() 0.8

《Python语言程序设计》——第3章数学函数、字符串和对象3.1 引言

第3章 数学函数.字符串和对象 学习目标 使用math模块中的函数解决数学问题(第3.2节). 表示和处理字符串和字符(第3.3-3.4节). 使用ASCII和Unicode对字符编码(第3.3.1-3.3.2节). 使用ord函数获取一个字符的数值编码以及使用chr函数将一个数值编码转换成一个字符(第3.3.3节). 调用带参数end的print函数(第3.3.5节). 使用str函数将数字转换成字符串(第3.3.6节). 使用运算符+来连接字符串(第3.3.7节). 从键盘读取字符串(第3.

Python中zip()函数用法实例教程_python

本文实例讲述了Python中zip()函数的定义及用法,相信对于Python初学者有一定的借鉴价值.详情如下: 一.定义: zip([iterable, ...])zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表).若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同.利用*号操作符,可以将list unzip(解压). 二.用法示例: 读者看看下面的例子,对