旧式格式化方式:%s,%d

1、顺序填入格式化内容

s = "hello %s, hello %d"%("world", 100)
print(s)

结果: 'hello world, hello 100'

2、使用关键字参数

s= "%(name)s age %(age)d"%{"name":"Tom", "age":10}
print(s)

结果:Tom name 10

常用的格式化符号

%s 对应的是字符串类型(str)
%d 对应十进制整数型的(int)

%f  对应浮点数(float)

%r 对应字符串(repr)

3、输出百分数

"%.2f%%"%(0.123)
# = 0.12%

利用format()函数

1、无参数情况

s = "hello {}, hello {}".format("world","Python")
print(s)

结果:"hello world, hello Python"

2、位置参数

s = "hello {1}, hello {0}".format("world","Python")
print(s)

结果:"hello Python, hello world"

3、关键词参数

s = "hello {first}, hello{second}".format(first="world",second="Python")
print(s)

结果: "hello world, hello Python"

4、位置参数与关键词参数混用

位置参数放在关键词参数前面,否则报错

s = "hello {first}, hello{0}".format(Python, first="world")
print(s)

结果:"hello world, hello Python"

5、"!a"(运用ascii()), "!s"(运用str()),  "!r"(运用repr())可以在格式化之前转换相应的值。

In [21]: contents = "eels"

In [22]: print("My hovercraft is full if {}.".format(contents))
My hovercraft is full if eels. In [23]: print("My hovercraft is full if {!r}.".format(contents))
My hovercraft is full if 'eels'. In [24]: print("My hovercraft is full if {!s}.".format(contents))
My hovercraft is full if eels. In [25]: print("My hovercraft is full if {!a}.".format(contents))
My hovercraft is full if 'eels'.

6、字段后可以用":"和格式指令,更好的控制格式。

(1)、下段代码将π 近似到小数点后3位

import math
print("The value of PI is approximately {0:.3f}.".format(math.pi))

结果:3.142

(2)、":"后面紧跟一个整数可以限定该字段的最小宽度

table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}
for name, phone in table.items():
print('{0:10} ==> {1:10d}'.format(name, phone))

结果:

Jack       ==>       4098
Dcab ==> 7678
Sjoerd ==> 4127

(3)、数字加千分位符

print("{0:,.2f}".format(12345678.12345))
# 输出 12,345,678.12

注意:使用format输出最终都为字符串类型

总结:

%格式化为python内置的操作符,常用的为本文提到的这几个,还有一些其他的,如进制相关的,想了解可以查找其他资料。format是利用Python内置函数,关于format还有更多的用法,如格式限定,精度确定,填充与对齐等。

python 字符串格式化输出 %d,%s及 format函数的更多相关文章

  1. Python - 字符串格式化详解(%、format)

    Python在字符串格式化的两种方式 % format %,关于整数的输出 %o:oct 八进制%d:dec 十进制%x:hex 十六进制 print("整数:%d,%d,%d" ...

  2. python字符串格式化输出

    python格式化输出 python格式化输出有两种方式:百分号和format format的功能要比百分号方式强大,其中format独有的可以自定义字符填充空白.字符串居中显示.转换二进制.整数自动 ...

  3. Python 字符串格式化输出方式

    字符串格式化有两种方式:百分号方式.format方式. 其中,百分号方式比较老,而format方式是比较先进的,企图替代古老的方式,目前两者共存. 1.百分号方式 格式:%[(name)][flags ...

  4. python字符串格式化输出 %和format举例

    #!/usr/bin/env python # -*- coding: UTF-8 -*- #pyversion:python3.5 #owner:fuzj s1 = "i am %s, i ...

  5. python 字符串格式化 输出

    1. 需要输出3列,为了输出好看,需要制定每一列的宽度: ‘%6.2f’ % 1.235 # 长度为6,保留2为小数 print '{0:20} {1:<20} {1:<20}\r\n'. ...

  6. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...

  7. (Python )格式化输出、文件操作、json

    本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...

  8. 【转】Python字符串格式化

    Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中. 在 Python 中,字符串格式化使用与 C 中 sp ...

  9. python print格式化输出。

    python print格式化输出. 1. 打印字符串 print ("His name is %s"%("Aviad")) 效果: 2.打印整数 print ...

随机推荐

  1. git的一些常见命令

    一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码 ...

  2. 帝国CMS备份出现数据恢复不完整的问题

    今天linux主机中毒了,把用帝国备份王备份之后,恢复了快照到刚建主机的状态: 哎,只怪当初没有勤快的去做快照啊: 重新配置好后: 开始使用帝国备份王: 数据恢复之后,打开文章,提示"附加表 ...

  3. [Python Study Notes]CS架构远程访问获取信息--SERVER端v2.0

    更新内容: 1.增加内存信息获取 2.增加电池信息获取 3.增加磁盘信息获取 4.重新布局窗体 5.增加窗体名称 6.增加连接成功之前,不可按压 ''''''''''''''''''''''''''' ...

  4. Ubuntu16.04解决无法切换root权限的问题

    在su root时发现无法切换到root权限.显示: /usr/local/bin/zsh 没有文件或目录 想了想问题所在,突然想起来前段时间想要更换shell主题,于是装了zsh和oh-my-zsh ...

  5. [Uva10294]Arif in Dhaka

    [Uva10294]Arif in Dhaka 标签: 置换 Burnside引理 题目链接 题意 有很多个珠子穿成环形首饰,手镯可以翻转和旋转,项链只能旋转.(翻转过的手镯相同,而项链不同) 有n个 ...

  6. 高可用之KeepAlived(一):基本概念和配置文件分析

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  7. JMS学习(一):初识JMS

    1.为什么使用JMS(java消息中间件)java message service 为了解决一个系统对服务调用进行解耦(在一个系统需要调用多个服务的时候,需要通过中间件来进行消息进行交流) 2.AMQ ...

  8. 对于文件File类型中的目录分隔符

    当我们在使用File f=new File(path); 对于这个path来说是一个很痛苦的事情,在不同的系统上面的分隔符号是不一样的 在windows下面的话是一个"\"而在un ...

  9. FIO性能测试

    FIO参数中,ioengine使用libaio,并发jobs数固定为1,通过iodepth来控制压力.分别测试随机读.随机写,作为读写的性能基准.不测试顺序读写,不测试混合读写. 1.测试IOPS峰值 ...

  10. 麻省理工18年春软件构造课程阅读02“Java基础”

    本文内容来自MIT_6.031_sp18: Software Construction课程的Readings部分,采用CC BY-SA 4.0协议. 由于我们学校(哈工大)大二软件构造课程的大部分素材 ...