输出格式化:str.format() 的基本使用

str.format() 的基本使用如下:

>>> print(‘{}网址: "{}!"‘.format(‘菜鸟教程‘, ‘www.runoob.com‘))
菜鸟教程网址: "www.runoob.com!"

括号及其里面的字符 (称作格式化字段) 将会被 format() 中的参数替换。

在括号中的数字用于指向传入对象在 format() 中的位置,如下所示:

>>> print(‘{0} 和 {1}‘.format(‘Google‘, ‘Runoob‘))
Google 和 Runoob
>>> print(‘{1} 和 {0}‘.format(‘Google‘, ‘Runoob‘))
Runoob 和 Google

如果在 format() 中使用了关键字参数, 那么它们的值会指向使用该名字的参数。

>>> print(‘{name}网址: {site}‘.format(name=‘菜鸟教程‘, site=‘www.runoob.com‘))
菜鸟教程网址: www.runoob.com

位置及关键字参数可以任意的结合:

>>> print(‘站点列表 {0}, {1}, 和 {other}。‘.format(‘Google‘, ‘Runoob‘,
                                                       other=‘Taobao‘))
站点列表 Google, Runoob, 和 Taobao。

‘!a‘ (使用 ascii()), ‘!s‘ (使用 str()) 和 ‘!r‘ (使用 repr()) 可以用于在格式化某个值之前对其进行转化:

>>> import math
>>> print(‘常量 PI 的值近似为: {}。‘.format(math.pi))
常量 PI 的值近似为: 3.141592653589793。
>>> print(‘常量 PI 的值近似为: {!r}。‘.format(math.pi))
常量 PI 的值近似为: 3.141592653589793。

可选项 ‘:‘ 和格式标识符可以跟着字段名。 这就允许对值进行更好的格式化。 下面的例子将 Pi 保留到小数点后三位:

>>> import math
>>> print(‘常量 PI 的值近似为 {0:.3f}。‘.format(math.pi))
常量 PI 的值近似为 3.142。

在 ‘:‘ 后传入一个整数, 可以保证该域至少有这么多的宽度。 用于美化表格时很有用。

>>> table = {‘Google‘: 1, ‘Runoob‘: 2, ‘Taobao‘: 3}
>>> for name, number in table.items():
...     print(‘{0:10} ==> {1:10d}‘.format(name, number))
...
Runoob     ==>          2
Taobao     ==>          3
Google     ==>          1

如果你有一个很长的格式化字符串, 而你不想将它们分开, 那么在格式化时通过变量名而非位置会是很好的事情。

最简单的就是传入一个字典, 然后使用方括号 ‘[]‘ 来访问键值 :

>>> table = {‘Google‘: 1, ‘Runoob‘: 2, ‘Taobao‘: 3}
>>> print(‘Runoob: {0[Runoob]:d}; Google: {0[Google]:d}; Taobao: {0[Taobao]:d}‘.format(table))
Runoob: 2; Google: 1; Taobao: 3

也可以通过在 table 变量前使用 ‘**‘ 来实现相同的功能:

>>> table = {‘Google‘: 1, ‘Runoob‘: 2, ‘Taobao‘: 3}
>>> print(‘Runoob: {Runoob:d}; Google: {Google:d}; Taobao: {Taobao:d}‘.format(**table))
Runoob: 2; Google: 1; Taobao: 3

原文地址:https://www.cnblogs.com/zf612326/p/9391645.html

时间: 2025-01-05 10:05:17

输出格式化:str.format() 的基本使用的相关文章

python输出格式化及函数format

总结了一些简单基本的输出格式化形式以及函数format函数基本使用形式. 字符串格式化代码: 格式 描述 %% 百分号标记 %c 字符及其ASCII码 %s 字符串 %d 有符号整数(十进制) %u 无符号整数(十进制) %o 无符号整数(八进制) %x 无符号整数(十六进制) %X 无符号整数(十六进制大写字符) %e 浮点数字(科学计数法) %E 浮点数字(科学计数法,用E代替e) %f 浮点数字(用小数点符号) %g 浮点数字(根据值的大小采用%e或%f) %G 浮点数字(类似于%g) %

str.format() 格式化数字的多种方法

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % . format 函数可以接受不限个参数,位置可以不按顺序. 实例 >>>"{} {}".format("hello", "world") # 不设置指定位置,按默认顺序 'hello world' >>> "{0} {1}".for

(增强型格式化字符串)str.format()

字符串格式化自2.6以后python提供更强大的函数str.format() # 语法 用{}代替% ## EXP 1:简单例子,关键字映射 ```python x = 1 y = "shabi" z = "wo shi {op1},{op2}".format(op1=y,op2=x) print z ``` ## EXP 2:转义{} ```python x = 1 y = "shabi" z = "wo shi {op}{{shit

%和str.format

%  符   号  描述       %s  格式化字符串       %d  格式化整数       %f  格式化浮点数字,可指定小数点后的精度       %c  格式化字符及其ASCII码       %u  格式化无符号整型       %o  格式化无符号八进制数       %x  格式化无符号十六进制数       %X  格式化无符号十六进制数(大写)       %e  用科学计数法格式化浮点数       %E  作用同%e,用科学计数法格式化浮点数       %g  %

JAVA字符串格式化-String.format()的使用(转)

常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串. format(Locale locale, String format, Object... args) 使用指定的语言环境,制定字符串格式和参

Java字符串格式化String.format常用用法

常规的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串. format(Locale locale, String format, Object... args) 使用指定的语言环境,制定字符串格式和参数生

JAVA字符串格式化String.format()的使用

JAVA字符串格式化-String.format()的使用常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串. format(Locale locale, String format, Object

str.format()方法

用法 str.format()方法会返回一个新的字符串,在新的字符串中,原字符串的替换字段(大括号中和数字是预留的替换字段)被format方法中的参数代替. 替换字段被format方法中参数代替有一下集中形式------------------------- 按照位置 '{0},{1}'.format('kzc',18)         #按照替换字段中的数字带入format方法中的参数 'kzc,18' '{},{}'.format('kzc',18)           #替换字段中没有数字

Python 字符串格式化%与format() 函数 九

这是12月规划的内容,2018年一月开篇~ 如果有什么错误,还请提出来~ 格式化这个在print已经提到一点,说实话和C语言非常类似 %的方法: %[(name)][flags][width].[precision]typecode (name)      可选,用于选择指定的key print("Year :%(year)s"%{'year':2018}) flags          可选,可供选择的值有: +       右对齐:正数前加正好,负数前加负号: -        左