python format(格式化)
自 python 2.6 开始,新增了一种格式化字符串的函数str.format(),可谓威力十足。那么,他跟之前的%型格式化字符串相比,有什么优越的存在呢?让我们来揭开它羞答答的面纱。
#语法
它通过{}和:来代替%。
位置
'{0},{1}'.format('kzc',18) # kzc,18
'{},{}'.format('kzc',18) # kzc,18
'{1},{0},{1}'.format('kzc',18) # 18,kzc,18
字符串的 format 函数可以接受不限个参数,位置可以不按顺序,可以不用或者用多次,不过2.6不能为空{},2.7才可以。
参数名
'{name}, {age}'.format(age=18,name='kzc') # '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)
str(Person('kzc',18)) # 'This guy is kzc,is 18 old'
对象下标
arg_arr = ["kevin", 26]
msg = "name: {0[0]}, age: {0[1]}".format(arg_arr) #name: kevin, age: 26
有了这些便捷的“映射”方式,我们就有了偷懒利器。基本的 python 知识告诉我们,list 和 tuple 可以通过“打散”成普通参数给函数,而 dict 可以打散成关键字参数给函数(通过和 * )。所以可以轻松的传个 list/tuple/dict 给 format 函数。非常灵活。
格式限定符
它有着丰富的的“格式限定符”(语法是{}中带:号),比如:
填充与对齐
填充常跟对齐一起使用
对齐
< (默认)左对齐
> 右对齐
^ 中间对齐
= (只用于数字)在小数点后进行补齐
填充
: 后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
'{:>8}'.format('') # ' 189'
'{:0>8}'.format('') #
'{:a>8}'.format('') # aaaaa189
精度与类型f
精度常跟类型f一起使用
'{:.2f}'.format(321.33345) # 321.33
其中 .2 表示长度为 2 的精度,f 表示 float 类型。
进制
b、d、o、x分别是二进制、十进制、八进制、十六进制。
'{:b}'.format(17) #
'{:d}'.format(17) #
'{:o}'.format(17) #
'{:x}'.format(17) #
用,号还能用来做金额的千位分隔符。
'{:,}'.format(1234567890) # 1,234,567,890
数据类型
b:二进制。将数字以2为基数进行输出。
c:字符。在打印之前将整数转换成对应的Unicode字符串。
d:十进制整数。将数字以10为基数进行输出。
o:八进制。将数字以8为基数进行输出。
x:十六进制。将数字以16为基数进行输出,9以上的位数用小写字母。
e:幂符号。用科学计数法打印数字。用’e’表示幂。
g:一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印。
n:数字。当值为整数时和’d’相同,值为浮点数时和’g’相同。不同的是它会根据区域设置插入数字分隔符。
%:百分数。将数值乘以100然后以fixed-point(‘f’)格式打印,值后面会有一个百分号。
转:https://blog.csdn.net/lpw_cn/article/details/84559705
python format(格式化)的更多相关文章
- 【387】Python format 格式化函数
参考:Python format 格式化函数 # 保留小数点后两位 f'{3.1415926:.2f}' # 带符号保留小数点后两位 f'{3.1415926:+.2f}' f'{-1:+.2f}' ...
- Python format 格式化函数。
Python format 格式化函数 Python 字符串 Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 ...
- python format格式化函数用法
python format格式化函数用法 原文 Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前 ...
- 【Python】Python format 格式化函数(转帖)
https://www.runoob.com/python/att-string-format.html Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符 ...
- Python format格式化函数
参考资料:https://www.runoob.com/python/att-string-format.html 在学习Python的时候碰到了一个很有趣的格式化输入的技巧,下面记录在此. Pyth ...
- Python format格式化时使用‘’{‘’或者‘’}‘’
用format格式化时,如果其中要用到‘’{‘’或者‘’}‘’,需要进行转义,否则报错 {{ ,}}使用同样的符号实现转义,而不是‘/’
- Python format 格式化函数
str.format() 格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % format 函数可以接受不限个参数,位置可以不按 ...
- python format格式化字符串
自python2.6开始,新增了一种格式化字符串的函数str.format() 语法 它通过{}和:来代替%. “映射”示例 通过位置 In [1]: '{0},{1}'.format('kzc',1 ...
- Python format格式化输出
http://www.jb51.net/article/63672.htm 推荐参考 >>> '{0},{1}'.format('hello','python') 'hello,py ...
随机推荐
- [C++ Primer Plus] 第10章、对象和类(二)课后习题
1. bank.h #include <string> using namespace std; class BankAccount { private: std::string m_na ...
- [Python]基础教程(4)、Python 变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- EJB 笔记
EJB(Enterprise JavaBean)是J2EE服务器端的组件模型,EJB包括会话Bean(Session Bean).实体Bean(Entity Bean).消息驱动Bean(Messag ...
- MySQL中select、insert、update批量操作语句
项目中经常的需要使用批量操作语句对数据进行操作,使用批量语句的时候需要注意MySQL数据库的条件限制,这里主要是数据的大小限制,这里对批量插入.批量查找及批量更新的基础操作进行下简单的汇总. 1.批量 ...
- ios开启双重认证之填坑式教学
2019.03.01.阳光明媚(不,,,有些雾霾..) 本来打算发布一个新版本app,修复一些小小bug, 然而,打包出错了,,错误是显示账号无连接.. 顿时慌出了天际,,以为是账号的证书问题,,最烦 ...
- python多环境下虚拟环境的搭建和使用
由于开发环境要求,或者实际需要.经常会出现python2.7和python3.x共存下的开发环境问题.虚拟环境的搭建可以很好的隔离Projects的开发环境. 1.首先解决python2.7和pyth ...
- 关于li标签的value属性值的获取问题
在前几天的开发过程中,遇到了这样一个问题. 在li标签中嵌入了一个value属性,如这样滴: <li id="ts1" value="0001">& ...
- Mysql 索引之B+tree
InnoDB使用的是聚簇索引,将主键组织到一棵B+树中,而行数据就储存在叶子节点上,若使用"where id = 14"这样的条件查找主键,则按照B+树的检索算法即可查找到对应的叶 ...
- git命令合并分支代码
对于复杂的系统,我们可能要开好几个分支来开发,那么怎样使用git合并分支呢? 合并步骤:1.进入要合并的分支(如开发分支合并到master,则进入master目录)git checkout maste ...
- nc(NetCat)命令
瑞士军刀netcat官网:http://netcat.sourceforge.net/ 安装:yum install -y nc查询:rpm -q nc 语法:nc [-hlnruz][-g<网 ...