python format 格式化输出方法


Posted in Python onJuly 16, 2018

0、前言

在python2.7及以上的版本,str.format()的方式为格式化提供了非常大的便利。与之前的%型格式化字符串相比,他显得更为方便与优越。下面我们就来看看format的具体用法。

1、常见的用法

二话不说,首先上代码,看看format的一些常用方法。

print "{:.2f}".format(3.1415926) #3.14,保留小数点后两位
print "{:+.2f}".format(3.1415926) #+3.14 带符号保留小数点后两位
print "{:+.2f}".format(-10) #-10.00 带符号保留小数点后两位
print "{:+.0f}".format(-10.00) #-10 不带小数
print "{:0>2d}".format(1) #01 数字补零 (填充左边, 宽度为2)
print "{:x<2d}".format(1) #1x 数字补x (填充右边, 宽度为4)
print "{:x<4d}".format(10) #10xx 数字补x (填充右边, 宽度为4)
print "{:,}".format(1000000) #1,000,000 以逗号分隔的数字格式
print "{:.2%}".format(0.12) #12.00% 百分比格式
print "{:.2e}".format(1000000) #1.00e+06 指数记法
print "{:<10d}".format(10) #10 左对齐 (宽度为10)
print "{:>10d}".format(10) #  10 右对齐 (默认, 宽度为10)
print "{:^10d}".format(10) # 10 中间对齐 (宽度为10)

1、格式符

‘f'表示浮点数

‘d'表示十进制整数. 将数字以10为基数进行输出

‘%'表示百分数. 将数值乘以100然后以fixed-point(‘f')格式打印, 值后面会有一个百分号

‘e'表示幂符号. 用科学计数法打印数字, 用'e'表示幂.

2、对齐与填充

^、<、>分别是居中、左对齐、右对齐,后面带宽度 :后面带填充字符,只能是一个字符,不指定的话默认就是空格。

2、format基础字符串替换

format中的字符串参数可以使用{num}来表示。0表示第一个,1表示第二个,以此类推。

为了更好了解上面的用法,首先我们来看看format的源码

def format(self, *args, **kwargs): # known special case of str.format
  """
  S.format(*args, **kwargs) -> string

  Return a formatted version of S, using substitutions from args and kwargs.
  The substitutions are identified by braces ('{' and '}').
  """
  pass

给大家翻译一把:

使用args和kwargs的替换返回S的格式化版本,替换由大括号('{‘和'}')标识。

再来看看实际的例子:

print "{0} and {1} is good for big data".format("python","java")
print "{} and {} is good for big data".format("python","java")
print "{1} and {0} and {0} is good for big data".format("python","java")

让代码run起来以后的结果:

python and java is good for big data
python and java is good for big data
java and python and python is good for big data

还可以为参数制定名字:

print "{language1} is as well as {language2}".format(language1="python",language2="java")

效果如下:

python is as well as java

3、通过集合下标的方式访问

下面的例子也可以达到目的

languages = ["python","java"]
print "{0[0]} is as well as {0[1]}".format(languages)

最后的效果:

python is as well as java

4、通过对象属性

format还经常使用在对象属性中。请看下面的例子:

class Person(object):
 def __init__(self,name,age):
  self.name = name
  self.age = age

 def __str__(self):
  return "name is: {current.name}, age is: {current.age}".format(current=self)

p = Person("leilei",18)
print p

最后的效果:

name is: leilei, age is: 18

以上这篇python format 格式化输出方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中操作日期和时间之gmtime()方法的使用
May 22 Python
详解Python进程间通信之命名管道
Aug 28 Python
Pytorch入门之mnist分类实例
Apr 14 Python
python字典值排序并取出前n个key值的方法
Oct 17 Python
python学生管理系统
Jan 30 Python
值得收藏的10道python 面试题
Apr 15 Python
Python3实现定时任务的四种方式
Jun 03 Python
python中matplotlib条件背景颜色的实现
Sep 02 Python
Django中F函数的使用示例代码详解
Jul 06 Python
Python Opencv轮廓常用操作代码实例解析
Sep 01 Python
Python Opencv实现单目标检测的示例代码
Sep 08 Python
Python实现照片卡通化
Dec 06 Python
Python合并多个Excel数据的方法
Jul 16 #Python
详解django.contirb.auth-认证
Jul 16 #Python
Python爬虫使用脚本登录Github并查看信息
Jul 16 #Python
django认证系统实现自定义权限管理的方法
Jul 16 #Python
Sanic框架路由用法实例分析
Jul 16 #Python
Sanic框架安装与简单入门示例
Jul 16 #Python
python 除法保留两位小数点的方法
Jul 16 #Python
You might like
php自定义函数转换html标签示例
2016/09/29 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
js兼容标准的表格变色效果
2008/06/28 Javascript
EasySlider 基于jQuery功能强大简单易用的滑动门插件
2010/06/11 Javascript
Web前端设计模式  制作漂亮的弹出层
2010/10/29 Javascript
别了 JavaScript中的isXX系列
2012/08/01 Javascript
js上传图片及预览功能实例分析
2015/04/24 Javascript
浅谈NodeJS中require路径问题
2015/05/07 NodeJs
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
分享一些常用的jQuery动画事件和动画函数
2015/11/27 Javascript
js滚动条平滑移动示例代码
2016/03/29 Javascript
如何重置vue打印变量的显示方式
2017/12/06 Javascript
js时间戳与日期格式之间转换详解
2017/12/11 Javascript
ES6中Set和Map数据结构,Map与其它数据结构互相转换操作实例详解
2019/02/28 Javascript
[01:12:53]完美世界DOTA2联赛PWL S2 Forest vs SZ 第一场 11.25
2020/11/26 DOTA
Python内置函数dir详解
2015/04/14 Python
Python自动化测试ConfigParser模块读写配置文件
2016/08/15 Python
python连接mysql实例分享
2016/10/09 Python
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
解决Python中回文数和质数的问题
2019/11/24 Python
Python列表切片常用操作实例解析
2020/03/10 Python
keras小技巧——获取某一个网络层的输出方式
2020/05/23 Python
HTML5新增的8类INPUT输入类型介绍
2015/07/06 HTML / CSS
英国女装网上商店:I Saw It First
2018/10/18 全球购物
Ref与out有什么不同
2012/11/24 面试题
转让协议书范本
2014/04/15 职场文书
公务员上班玩游戏检讨书
2014/09/17 职场文书
领导班子党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
病人慰问信范文
2015/02/15 职场文书
岗位职责范本大全
2015/02/26 职场文书
小学教师党员承诺书
2015/04/27 职场文书
2015年建筑工作总结报告
2015/05/04 职场文书
钱学森观后感
2015/06/04 职场文书
2015年大学迎新晚会总结
2015/07/16 职场文书
运动会班级前导词
2015/07/20 职场文书
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python