代码先锋网 代码片段及技术文章聚合

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还有更多的用法,如格式限定,精度确定,填充与对齐等。

 

版权声明:本文为amelia1995原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/amelia1995/article/details/101602603

智能推荐

python 格式化字符串 format() 函数

语法: 通过 {}和 :来替代 % 示例: 通过位置 通过关键字 通过对象属性 通过下标 格式限定符 精度与类型 其他类型 用,号来做金额的千位分隔符 >>> "{:,}".format(123456789) '123,456,789'...

Python字符串(String)与格式化输出及字符串的常用函数

String字符串与格式化输出及字符串的常用函数 一、String字符串 1.什么是字符串 字符串是以单引号或者双引号括起来的任意文本,一个字符串由若干个任意字符组成 2.创建字符串 3.字符串运算 3.1字符串链接 3.1.1 使用加号("+")进行链接 特点:输出之后,连接的字符串之间没有空格 注意:不同类型的不能相加,如字符串 + 数字,这样会报错 3.1.2 使用&ld...

python字符串格式化 百分号方式 format方式

1、百分号方式   执行结果是: 打印浮点型: 2、format形式: 执行结果为:  ...

python基础 字符串 格式化字符串 format函数格式化字符串

python基础 字符串 格式化字符串 在python中经常会用到格式化字符串 我们可以用格式符格式化字符串也可以用format函数来格式化字符串 个人跟习惯用format函数 1.设定一个模板,并用格式符位真实的值预留位置格式符有 格式符分两种: %d 数字格式符 为一个数字留放一个位置 %s 字符串格式符 为一个字符串留放一个位置 输出: 欢迎访问DSDN伊凡的博客的博客 你是第100位浏览者...

猜你喜欢

【知识碎片】python 字符串格式化输出:%d,%s,%f

在进行爬虫项目练习是会遇到语句中有%d,%s,%f的情况,这就是python字符串格式化输出。基本用法是将一个“值”插入到有字符串格式符%d,%s,%f的字符串中。 比如下面代码: 输出: 除此之外,还可以用%符号对其他类型的数据进行格式化。常见的格式化符号如下表。 常见格式化符号 格式符号 转换 %s 通过str()字符串转换来的格式化 %u 无符号的十进制整数 %d 有...

python小咖 字符串的格式化输出 format方法,f方法等

  例: 输出:'电影《XXX》的评分为8.8:,《XXX》大受好评!' 一.基本方法 用引号和很多的加号连接变量 尝试编写程序,实现分段函数计算,如下表所示。   x y x<0 0 0<=x<5 x 5<=x<10 3x-5 10<=x<20 0.5x-2 20<=x 0        ...

[Python3]format字符串格式化输出

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。 基本语法是通过 {} 和 : 来代替以前的 % 。 format 函数可以接受不限个参数,位置可以不按顺序。  ...

数据结构之斐波那契数列的建立

斐波那契数列( F[] = {0, 1, 1, 2, 3, 5, 8, 13, 21,...... }; )     大家在初中的时候都做过这题吧:如果兔子在出生两个月后就有繁殖能力,一对兔子每月能生出一对小兔子。假设所有兔子都不死,那么一年后可以繁殖多少对兔子呢?     这题中:所经过的月数和兔子对数就构成了斐波那契数列。(读者自己下去算吧)  ...

[GUET-CTF2019]NO SOS

question decrypt 题目给了提示 NO SOS 说明不是摩尔斯电码(sos是国际摩尔斯电码救难信号.) 于是将.-看成二进制可是发现是65位并不能转化成字符串但是是五的倍数,于是尝试用培根密码...