深度测评Python的3种“字符串格式化”方法,看看你喜欢哪一种?(二)

简介: 深度测评Python的3种“字符串格式化”方法,看看你喜欢哪一种?(二)

4)使用“任意符号”完成填充功能

这个知识点必须在讲完填充和对齐后,才能为大家演示。其实没有为什么,就是语法是这样的,我们就必须这样做。


① %格式化

旧版语法的%格式化,使用"特定符号"填充,很麻烦,不直接,你也不用去管。这里主要看新版语法中format()格式化和f-string格式化,进行"特定符号"填充。


② format()格式化

# 左填充
a = '{:_>10}'.format('黄同学')
print(a,len(a))
# 右填充
b = '{:_<10}'.format('黄同学')
print(b,len(b))
# 居中填充
c = '{:_^10}'.format('黄同学')
print(c,len(c))


结果如下:

image.png


③ f-string格式化

name = "黄同学"
a = f"{name:_>10}"
print(a,len(a))
b = f"{name:_<10}"
print(b,len(b))
c = f"{name:_^10}"
print(c,len(c))


结果如下:


image.png

5)与“数字”相关的格式化填充技巧

① 你有必要了解的知识

经过前面的学习和叙述,我们已经知道这3种方法,都是完成字符串格式化的操作的,但是为何它们又可以填充数字呢?


原因:Python自动帮我们做了一次隐式转换,但是这种隐式转换是需要付出代价的,它会消耗额外的性能,牺牲速度。因此我们有特定的语法去解决这个问题。


② %格式化

%s表示填充字符串;%d表示填充整数;%f表示填充小数;

完成整数的填充:


# 仅仅使用%s,既可以完成字符串的填充,又可以完成数字的填充
a = '%s' % (3000)
print(a)
a1 = '%s' % ("3000")
print(a1)
# 当使用了%d后,只可以填充数字,不能填充字符串,否则会报错
# 使用%d填充整数,是推荐写法
b = '%d' % (3000)
print(b)
b1 = '%d' % ("3000")
print(b1)


结果如下:

image.png

完成浮点数的填充:


a = '%.2f' % (3.1415926)
print(a)
b = '%.3f' % (3.1415926)
print(b)


结果如下:

image.png


③ format()格式化

完成整数的填充:


# 不指定d符号,既可以完成字符串的填充,又可以完成数字的填充
a = '{:$>5}'.format(3000)
print(a)
a1 = '{:$>5}'.format("3000")
print(a1)
# 当指定了d符号后,只可以填充数字,不能填充字符串,否则会报错
# 使用符号d填充整数,是推荐写法
b = '{:¥>5d}'.format(3000)
print(b)
b1 = '{:¥>5d}'.format("3000")
print(b1)


结果如下:

image.png

完成浮点数的填充:


a = '{:.2f}'.format(3.14159268)
print(a)
b = '{:.3f}'.format(3.14159268)
print(b)


结果如下:

image.png


④ f-string格式化

完成整数的填充:


num1 = 3000
num2 = "3000"
# 不指定d符号,既可以完成字符串的填充,又可以完成数字的填充
a = f'{num1}'
print(a)
a1 = f'{num2}'
print(a1)
# 当指定了d符号后,只可以填充数字,不能填充字符串,否则会报错
# 使用符号d填充整数,是推荐写法
b = f'{num1:d}'
print(b)
b1 = f'{num2:d}'
print(b1)


结果如下:

image.png

完成浮点数的填充:


num = 3.14159268
a = f'{num:.2f}'
print(a)
b = f'{num:.3f}'
print(b)


结果如下:

image.png

相关文章
|
28天前
|
机器学习/深度学习 Python
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
47 3
|
26天前
|
Python
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
120 64
|
15天前
|
安全
Python-打印99乘法表的两种方法
本文详细介绍了两种实现99乘法表的方法:使用`while`循环和`for`循环。每种方法都包括了步骤解析、代码演示及优缺点分析。文章旨在帮助编程初学者理解和掌握循环结构的应用,内容通俗易懂,适合编程新手阅读。博主表示欢迎读者反馈,共同进步。
|
18天前
|
存储 测试技术 Python
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
39 5
|
22天前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
24 7
|
23天前
|
JSON 安全 API
Python调用API接口的方法
Python调用API接口的方法
105 5
|
1月前
|
算法 决策智能 Python
Python中解决TSP的方法
旅行商问题(TSP)是寻找最短路径,使旅行商能访问每个城市一次并返回起点的经典优化问题。本文介绍使用Python的`ortools`库解决TSP的方法,通过定义城市间的距离矩阵,调用库函数计算最优路径,并打印结果。此方法适用于小规模问题,对于大规模或特定需求,需深入了解算法原理及定制策略。
39 15
|
28天前
|
Python
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
35 6
|
1月前
|
机器学习/深度学习 人工智能 算法
强化学习在游戏AI中的应用,从基本原理、优势、应用场景到具体实现方法,以及Python在其中的作用
本文探讨了强化学习在游戏AI中的应用,从基本原理、优势、应用场景到具体实现方法,以及Python在其中的作用,通过案例分析展示了其潜力,并讨论了面临的挑战及未来发展趋势。强化学习正为游戏AI带来新的可能性。
90 4
|
1月前
|
Python
Python编程中的魔法方法(Magic Methods)
【10月更文挑战第40天】在Python的世界中,魔法方法就像是隐藏在代码背后的神秘力量。它们通常以双下划线开头和结尾,比如 `__init__` 或 `__str__`。这些方法定义了对象的行为,当特定操作发生时自动调用。本文将揭开这些魔法方法的面纱,通过实际例子展示如何利用它们来增强你的类功能。
18 1