python format 格式化输出方法
作者:bitcarmanlee 发布时间:2023-12-24 16:26:19
标签:python,format,格式化,输出
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
来源:https://blog.csdn.net/bitcarmanlee/article/details/67647282


猜你喜欢
- 下列语句部分是Mssql语句,不可以在access中使用。SQL语句分类:DDL—数据定义语言(CREATE,ALTER,DROP,DECL
- 将有安全问题的SQL过程删除.比较全面.一切为了安全!删除了调用shell,注册表,COM组件的破坏权限MS SQL SERVER2000使
- 1. MySQL Connector1.1 创建连接import mysql.connector config={ "
- JavaScript中有很多内部属性和方法,在大多数情况下,只有JavaScript引擎才可以访问,但不论什么都是有特例的,在这里就是指Mo
- 速查表是帮你记住东西的有效工具。Web设计师和开发者经常使用的快捷键简表会使他们在网上的工作效率大大提高。事实上,速查表就是来帮助我们把日常
- 今天终于抽出时间瞟了一眼JavaScript的新标准ECMA262v5,让我欣喜的是,不像是因为过于激进而被废除的v4,这个新标准对Java
- 自上一篇文章 Z Story : Using Django with GAE Python 后台抓取多个网站的页面全文 后,大体的进度如下:
- 看代码吧~# 加载库import numpy as npfrom fancyimpute import KNNfrom sklearn.pr
- 可以在Mac OS X 10.2.x(“Jaguar”)和以上版本上Mac OS X使用二进制安装软件包的PKG格式代替二进制分发版来安装M
- Cookies,有些人喜欢它们,有些人憎恨它们。但是,很少有人真正知道如何使用它们。现在你可以成为少数人中的成员-可以自傲的Cookie 大
- 如何修改被表单引用的ASP页面?formhandler.asp<HTML><BODY BGCOLOR="
- Flask 环境配置你的应用程序可能需要大量的软件包才能正常的工作。如果都不需要 Flask 包的话,你有可能读错了教程。当应用程序运行的时
- Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQL Server服务器系统和数据库的安全进行全面地管理。按照本文
- 抽象工厂模式(Abstract Factory Pattern):属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负
- 一、JS介绍  Javascript是一种由Netscape(网景)的LiveScript发展而来的原型
- 一、安装依赖包pip install --index https://pypi.mirrors.ustc.edu.cn/simple/ py
- 原理介绍keras是一种基于模块的高级深度学习开发框架,它并没有仅依赖于某一种高速底层张量库,而是对各种底层张量库进行高层模块封装,让底层库
- 在这个周末刚刚写出来的python桌面应用--网络聊天室,主要通过pyqt5作为桌面应用框架,socket作为网络编程的框架,从而实现包括客
- 一个网站信息结构需要表现给用户看,这样用户才能知道当前是在哪儿,才有可能去猜测某个内容可能会在哪儿。如何表现网站的信息结构给用户呢?用导航。
- rs.open sql,conn:如果sql是delete,update,insert则会返回一个关闭的记录集,在使用过程中不要来个rs.c