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内置函数之filter map reduce介绍
Nov 30 Python
详解Python中的正则表达式的用法
Apr 09 Python
python 容器总结整理
Apr 04 Python
git使用.gitignore设置不生效或不起作用问题的解决方法
Jun 01 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
Jan 10 Python
Python切片操作深入详解
Jul 27 Python
python 对多个csv文件分别进行处理的方法
Jan 07 Python
深入浅析python 协程与go协程的区别
May 09 Python
Django 实现图片上传和显示过程详解
Jul 18 Python
Python函数中的可变长参数详解
Sep 12 Python
Python + Requests + Unittest接口自动化测试实例分析
Dec 12 Python
Python3中的f-Strings增强版字符串格式化方法
Mar 04 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简单封装了一些常用JS操作
2007/02/25 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
Extjs TimeField 显示正常时间格式的代码
2011/06/28 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
2015/03/26 Javascript
JQuery实现图片轮播效果
2015/09/15 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
JS中使用mailto实现将用户在网页中输入的内容传递到本地邮件客户端
2016/10/08 Javascript
js实现漫天星星效果
2017/01/19 Javascript
js实现常见的工具条效果
2017/03/02 Javascript
PHP实现记录代码运行时间封装类实例教程
2017/05/08 Javascript
JavaScript禁止微信浏览器下拉回弹效果
2017/05/16 Javascript
基于vue2.x的电商图片放大镜插件的使用
2018/01/22 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
JavaScript时间与时间戳的转换操作实例分析
2018/12/07 Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
详解如何理解vue的key属性
2019/04/14 Javascript
Vue函数式组件的应用实例详解
2019/08/30 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
2020/07/28 Javascript
[04:22]DSPL第二期精彩集锦:残血反杀!
2014/12/10 DOTA
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Django添加favicon.ico图标的示例代码
2018/08/07 Python
Linux上使用Python统计每天的键盘输入次数
2019/04/17 Python
Python性能分析工具Profile使用实例
2019/11/19 Python
Pytorch Tensor基本数学运算详解
2019/12/30 Python
pytorch 自定义卷积核进行卷积操作方式
2019/12/30 Python
如何通过python实现全排列
2020/02/11 Python
HTML5 Blob 实现文件下载功能的示例代码
2019/11/29 HTML / CSS
关于热爱祖国的演讲稿
2014/05/04 职场文书
2014年施工员工作总结
2014/11/18 职场文书
2015年幼儿园中班开学寄语
2015/05/27 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书
使用pandas模块实现数据的标准化操作
2021/05/14 Python
通过Qt连接OpenGauss数据库的详细教程
2021/06/23 PostgreSQL
postgresql 删除重复数据案例详解
2021/08/02 PostgreSQL