字符串格式化format方法
通过位置参数传参
print('{}, {}'.format('KeithTt', 18))
# KeithTt, 18
位置参数可以通过索引调用
print('{1}, {0}'.format('KeithTt', 18))
# 18, KeithTt
通过关键字参数传参
print('{name}, {age}'.format(name='KeithTt', age=18))
# KeithTt, 18
print('{age}, {name}'.format(name='KeithTt', age=18))
# 18, KeithTt
- ^, <, > 分别是居中、左对齐、右对齐,后面带宽度
- 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充
+ 表示总是显示正负符号,在正数前显示 +,负数前显示 -
b、d、o、x 分别是二进制、十进制、八进制、十六进制
保留两位小数,其中.2表示精度,f 表示float类型
print('{:.2f}'.format(3.1415926))
# 3.14
>>> print('{:.5f}'.format(3.1415926))
# 3.14159
不带类型时比较特殊,使用科学计数法,如果整数位个数+1大于精度,将使用符号表示
>>> print('{:.2}'.format(3.1415926))
# 3.1
>>> print('{:.2}'.format(13.1415926))
# 1.3e+01
>>> print('{:.3}'.format(13.1415926))
# 13.1
不带小数,即精度为0
print('{:.0f}'.format(3.1415926))
# 3
加号 + 表示总是输出正负符号
print('{:+.2f}'.format(3.1415926))
# +3.14
print('{:+.2f}'.format(-3.1415926))
# -3.14
指定宽度和对齐方式,默认是右对齐>,>符号可省
print('{:>10.2f}'.format(3.1415926))
# 3.14
print('{:<10.2f}'.format(3.1415926))
# 3.14
print('{:^10.2f}'.format(3.1415926))
# 3.14
指定填充字符,默认是空格,只能是一个字符
print('{:0>10.2f}'.format(3.1415926))
# 0000003.14
print('{:*>10.2f}'.format(3.1415926))
# ******3.14
print('{:*<10.2f}'.format(3.1415926))
# 3.14******
用等号 = 让正负符号单独在最前面
print('{:=+10.2f}'.format(3.1415926))
# + 3.14
print('{:=+10.2f}'.format(-3.1415926))
# - 3.14
加上填充字符,正负符号始终在最前面
print('{:*=+10.2f}'.format(3.1415926))
# +*****3.14
print('{:0=+10.2f}'.format(3.1415926))
# +000003.14
用逗号分隔数字
print('{:,}'.format(1000000))
# 1,000,000
将浮点数转换成百分比格式
print('{:.0%}'.format(0.25))
# 25%
使用大括号 {} 转义大括号
print ('{}对应的位置是{{0}}'.format('KeithTt'))
# KeithTt对应的位置是{0}
另外,除了format()之外,字符串对象还有一些其它更直观的格式化方法
- str.ljust(): 左对齐
- str.rjust(): 右对齐
- str.center(): 居中
示例: 格式化打印下面的数据,要求各部分对齐
d = {
'lodDisk': 100.0,
'SmallCull': 0.04,
'DistCull': 500.0,
'trilinear': 40,
'farclip': 477
}
# 计算出所有key的最长宽度
w = max(map(len, d.keys()))
print(w)
# 9
for k,v in d.items():
print(k.ljust(w), ':', v)
lodDisk : 100.0
SmallCull : 0.04
DistCull : 500.0
trilinear : 40
farclip : 477
参考:
https://docs.python.org/3/library/functions.html#format
https://docs.python.org/3/library/string.html#format-specification-mini-language
http://docspy3zh.readthedocs.io/en/latest/tutorial/inputoutput.html
http://www.runoob.com/python/att-string-format.html
字符串格式化format方法的更多相关文章
- Python字符串格式化--format()方法
https://blog.csdn.net/i_chaoren/article/details/77922939 csdn
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- Python中格式化format()方法详解
Python中格式化format()方法详解 Python中格式化输出字符串使用format()函数, 字符串即类, 可以使用方法; Python是完全面向对象的语言, 任何东西都是对象; 字符串的参 ...
- Python中使用f字符串进行字符串格式化的方法
在<第3.10节 Python强大的字符串格式化新功能:使用format字符串格式化>介绍了使用format进行字符串格式化的方法,在Python 3.6中,如果格式化字符串中的关键字参数 ...
- js字符串格式化扩展方法
平时使用js的时候会遇到很多需要拼接字符串的时候,如果是遇到双引号和单引号混合使用,经常会搞混.在C#中有string.Format方法,使用起来非常方便,也很容易理解,所以找到一种参考C#的form ...
- Python: 字符串格式化format()函数的使用
python从2.6开始支持format,新的更加容易读懂的字符串格式化方法,从原来的% 模式变成新的可读性更强的 花括号声明{}.用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序号, ...
- 字符串格式化format很牛B
python的format方法可谓相当强大,它可以接受不限个参数... 1.通过位置来格式化字符串,注意format传入的参数的位置要正确{0}对应第1个参数,{1}对应第2个参数... >&g ...
- 字符串str.format()方法的个人整理
引言: 字符串的内置方法大致有40来个,但是一些常用的其实就那么20几个,而且里面还有类似的用法,区分度高比如isalpha,isalnum,isdigit,还有一些无时不刻都会用到的split切分, ...
- Python3之字符串格式化format函数详解(上)
概述 在Python3中,字符串格式化操作通过format()方法或者f’string’实现.而相比于老版的字符串格式化方式,format()方法拥有更多的功能,操作起来更加方便,可读性也更强.该函数 ...
随机推荐
- A2dp初始化流程源码分析
蓝牙启动的时候,会涉及到各个profile 的启动.这篇文章分析一下,蓝牙中a2dp profile的初始化流程. 我们从AdapterState.java中对于USER_TURN_ON 消息的处理说 ...
- Flutter - Json序列化
这个问题,FlutterChina小组已经说明的非常清楚易懂了. 详见https://flutterchina.club/json/
- Unity 敌人波次设计
一.平均时间随机敌人 将所有种类敌人预制物体放在一个列表里面,每隔时间T从列表中随机选出一个生成在场景中. 二.时间加权紧迫度随机敌人 在随机情况下每种敌人出现的概率近似相等,当敌人种类较多时,有可能 ...
- Week 3 结对编程
Group: 杜正远 潘礼鹏 结对编程: 优点: 集体荣誉感.你们已经是一个集体了,一定得为对方着想负责. 1.看对方的代码,彼此会互相学习到一些奇妙的方法. 2.结对编程能把两个事情分开,降低复杂度 ...
- linux第四次读书笔记
第四章:进程调度 一.多任务 1.非抢占式多任务 进程会一直执行直到自己主动停止运行(这一步骤称为让步) 2.抢占式多任务 Linux/Unix使用的是抢占式的方式:强制的挂起进程的动作就叫做抢占.进 ...
- LINUX实践之模块
模块实践 --关于模块代码部分 ---首先是.c代码: 一定会用到的函数有这几个:module_init().module_exit().MODULE_LICENSE() 会用到的头文件:module ...
- EnglishGame
https://github.com/zhangxue520/EnglishGame/blob/master/EnglishGame <程序设计实践I> 题目: 打字训练测试软 ...
- octave基本指令1
octave基本指令1 注释 使用: disp 输出指令 eg: >>a = pi; >>disp(sprintf('2 decimals:%0.2f'a)) 2 decima ...
- linux和Mac上安装composer
使用命令行方式,可以直接使用下面的命令,顺序执行: php -r "copy ('https://getcomposer.org/installer','composer-setup.php ...
- Oracle一次可以查询多个表的结果的方法
select (select count(1) from gspauresult) 权限总表, (select count(1) from gspau01result) 权限总表1, (select ...