python 字符串格式化输出 %d,%s及 format函数
旧式格式化方式:%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函数的更多相关文章
- Python - 字符串格式化详解(%、format)
Python在字符串格式化的两种方式 % format %,关于整数的输出 %o:oct 八进制%d:dec 十进制%x:hex 十六进制 print("整数:%d,%d,%d" ...
- python字符串格式化输出
python格式化输出 python格式化输出有两种方式:百分号和format format的功能要比百分号方式强大,其中format独有的可以自定义字符填充空白.字符串居中显示.转换二进制.整数自动 ...
- Python 字符串格式化输出方式
字符串格式化有两种方式:百分号方式.format方式. 其中,百分号方式比较老,而format方式是比较先进的,企图替代古老的方式,目前两者共存. 1.百分号方式 格式:%[(name)][flags ...
- python字符串格式化输出 %和format举例
#!/usr/bin/env python # -*- coding: UTF-8 -*- #pyversion:python3.5 #owner:fuzj s1 = "i am %s, i ...
- python 字符串格式化 输出
1. 需要输出3列,为了输出好看,需要制定每一列的宽度: ‘%6.2f’ % 1.235 # 长度为6,保留2为小数 print '{0:20} {1:<20} {1:<20}\r\n'. ...
- python基础_格式化输出(%用法和format用法)(转载)
python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...
- (Python )格式化输出、文件操作、json
本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...
- 【转】Python字符串格式化
Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中. 在 Python 中,字符串格式化使用与 C 中 sp ...
- python print格式化输出。
python print格式化输出. 1. 打印字符串 print ("His name is %s"%("Aviad")) 效果: 2.打印整数 print ...
随机推荐
- 洛谷 [P3398] 仓鼠找sugar
树剖求LCA 我们可以发现,两条路径ab,cd相交,当且仅当 dep[lca(a,b)]>=dep[lca(c,d)]&(lca(lca(a,b),c)==lca(a,b)||lca(l ...
- 2018/2/13 ElasticSearch学习笔记三 自动映射以及创建自动映射模版,ElasticSearch聚合查询
终于把这些命令全敲了一遍,话说ELK技术栈L和K我今天花了一下午全部搞定,学完后还都是花式玩那种...E却学了四天(当然主要是因为之前上班一直没时间学,还有安装服务时出现的各种error真是让我扎心了 ...
- 在linux内核中实现自己的系统调用
如实现一个简单的打印:printk 1.cd linux-ok6410/kernel/ vim printk.cvoid sys_pk(){printk("<0>this is ...
- Linux知识体系之磁盘与档案系统管理
硬盘的物理组成:由许许多多的圆形硬盘盘所组成.宜居硬盘盘能够容纳的数据量,而有所谓的单碟或者多碟. 首先,硬盘里一定会有所谓的磁头(Head)在进行该硬盘上面的读写动作,而磁头是固定在机械手臂上的,机 ...
- CEF小白人系列1-认识CEF
手头上有个项目需要做浏览器的相关功能,评估了几个嵌入式方案最后选定CEF作为开发基础. 在入坑新技术的时候第一选择是去官网学习,这是一个非常好的习惯. CEF官网(请科学上网) https://bit ...
- 变态的IE
1.IE7及更早版本, unshift()方法总是返回undefined而不是数组的新长度.2.IE8及之前版本, 在catch语句中捕获的错误对象会被添加到执行环境的变量对象, 而不是catch语句 ...
- centos7 yum与Python3冲突
虽然标题不严谨,但是,我自己尝试了多次,在安装了Python3.6后,yum无法同步Python.所以采用网上抄来抄去的做法,将yum指定使用Python2,凡是需要安装与Python相关的模块,使用 ...
- Egret学习笔记.1 (写在前面的废话)
我记得之前谁说过,大部分程序员入行,都是因为小的时候的游戏机啊,各种电子设备啊....觉得有意思,才入的行 . 至少我本人是因为之前上高中那会儿,喜欢玩手机.那会儿还是MTK,塞班的时代,喜欢拿着手机 ...
- java获取windows下面的文件对象
import javax.swing.*;import javax.swing.filechooser.FileSystemView;import java.io.File; FileSystemVi ...
- SpringBoot CGLIB AOP解决Spring事务,对象调用自己方法事务失效.
对于像我这种喜欢滥用AOP的程序员,遇到坑也是习惯了,不仅仅是事务,其实只要脱离了Spring容器管理的所有对象,对于SpringAOP的注解都会失效,因为他们不是Spring容器的代理类,Sprin ...