python格式化输出(一):%s和format()用法比较(一)

简介: python格式化输出(一):%s和format()用法比较(一)

1、python格式化输出历史起源

python2.5之前,我们使用的是老式格式化输出:%s。从python3.0开始起(python2.6同期发布),同时支持两个版本的格式化,多出来的一个新版本就是利用format()函数,进行格式化输出。

2、为什么要学习python3支持的新式格式化输出呢?

虽然老式的语法,兼容性很好,但是它的功能很少,很难完成复杂的任务,而format()函数进行格式化输出,功能更加强大,从下面的学习中你会慢慢体会到。

3、基本用法

a = "%s张飞%s关羽%s刘备%s赵云" % (1,2,3,4)
display(a)
b  = "{}张飞{}关羽{}刘备{}赵云".format(1,2,3,4)
display(b)


结果如下:

image.png


1)format()支持位置格式化填充,%s不支持;

第一种方式:大括号{ }中写的是format()传入值所对应的下标。

第二种方式:大括号{ }中的变量,和format()传入值是一一对应的。

# --------------------方式一-----------------------
c = "{3}张飞{1}关羽{2}刘备{0}赵云".format(1,2,3,4)
display(c)
# --------------------方式二-----------------------
def my_hobbies(fruit,ball,drink):
    hobbies = "我喜欢水果{fruit},我也喜欢球类{ball},我还喜欢饮料{drink}".format(ball=ball,fruit=fruit,drink=drink)
    return hobbies
fruit = "apple"
ball = "basketball"
drink = "milk"
my_hobbies(fruit,ball,drink)
# --------------------方式二-----------------------
fruit = "apple"
ball = "basketball"
drink = "milk"
hobbies = "我喜欢水果{fruit},我也喜欢球类{ball},我还喜欢饮料{drink}".format(ball=ball,fruit=fruit,drink=drink)
display(hobbies)


结果如下:

image.png

4、填充和对齐

1)填充(只能用一个字符进行填充)

① 什么是填充?


概念:当指定了字符串最终的长度,但是现有的字符串没有那么长,那么我们就用某种字符(填充字符)来填满至这个长度,这就是“填充”。

② %s:实现填充功能;


a = "%s" % ("张飞")
display(a)
b = "%10s" % ("张飞")
display(b)


结果如下:

image.png

③ format():实现填充功能;


c = "{}".format("张飞")
display(c)
d = "{:10}".format("张飞")
display(d)


结果如下:

image.png

总结如下:通过上述案例结果呈现,当使用的是%s,进行字符串填充的时候,默认是在原字符串左侧进行填充;当使用的是format(),进行字符串填充的时候,默认是在原字符串右侧进行填充。这就是我们下面要讲述的"对齐"。


2)对齐

① 什么是对齐?


概念:"对齐"要与"填充"一起使用,才会显得有意义。当我们进行填充的时候,我们可以选择只在字符串左侧填充,也可以选择只在字符串右侧填充,还可以选择在字符串两侧填充(字符串居中显示的填充方式)。

② %s:实现对齐功能,只有左对齐和右对齐;


# 左填充
a = '%10s' % ('张飞')
display(a)
# 右填充
b = '%-10s' % ('张飞')
display(b)


结果如下:

image.png

③ format():实现对齐功能,不仅有左对齐和右对齐,还有居中对齐;


# 左填充
a = '{:>10}'.format('张飞')
display(a)
# 右填充
b = '{:<10}'.format('张飞')
display(b)
# 居中填充
c = '{:^10}'.format('张飞')
display(c)


结果如下:

image.png

④ 使用"特定符号"进行填充;


旧版语法中(%s),使用"特定符号"填充,很麻烦,不直接,你也不用去管。这里主要看新版语法中(format()函数),进行"特定符号"填充。

image.png

相关文章
|
1月前
|
Python
Python三引号用法与变量详解
本文详细介绍了Python中三引号(`&quot;&quot;&quot;` 或 `&#39;&#39;&#39;`)的用法,包括其基本功能、如何在多行字符串中使用变量(如f-string、str.format()和%操作符),以及实际应用示例,帮助读者更好地理解和运用这一强大工具。
46 2
|
2月前
|
Python
【10月更文挑战第6天】「Mac上学Python 12」基础篇6 - 输入输出与格式化详解
本篇将详细介绍Python中的输入和输出函数,包括 `print()` 和 `input()` 函数的使用,涵盖格式化输出、类型转换及常见的字符串格式化方法。通过学习本篇,用户将掌握如何使用Python进行输入输出操作,并能灵活运用格式化输出处理数据。
66 1
【10月更文挑战第6天】「Mac上学Python 12」基础篇6 - 输入输出与格式化详解
|
2月前
|
缓存 测试技术 开发者
深入理解Python装饰器:用法与实现
【10月更文挑战第7天】深入理解Python装饰器:用法与实现
22 1
|
2月前
|
传感器 大数据 数据处理
深入理解Python中的生成器:用法及应用场景
【10月更文挑战第7天】深入理解Python中的生成器:用法及应用场景
83 1
|
2月前
|
存储 大数据 Python
案例学Python:filter()函数的用法,高级!
`filter()`函数是Python中处理序列数据的强大工具,它允许我们高效地根据条件过滤元素。通过结合匿名函数、常规函数或直接利用Python的内置逻辑,`filter()`提供了灵活且高效的过滤机制,尤其在大数据处理和内存敏感的应用中展现出其价值。掌握 `filter()`的使用,不仅能提升代码的可读性和效率,还能更好地适应Python的函数式编程风格。
45 2
|
2月前
|
Python
深入了解Python中星号变量的特殊用法
深入了解Python中星号变量的特殊用法
30 0
|
2月前
|
PyTorch 测试技术 算法框架/工具
Python中Thop库的常见用法和代码示例
肆十二在B站分享了关于THOP(Torch-OpCounter)的实战教学视频。THOP是一个用于计算PyTorch模型操作数和计算量的工具,帮助开发者评估模型复杂度和性能。本文介绍了THOP的安装、使用方法及基本用例,包括如何计算模型的FLOPs和参数量。
153 0
|
2月前
|
SQL 关系型数据库 MySQL
Python中Pymysql库的常见用法和代码示例
`pymysql` 是一个用于连接 MySQL 数据库的 Python 库,支持 SQL 查询的执行和结果处理。通过 `pip install pymysql` 安装后,可使用 `connect()` 方法建立连接,`cursor()` 创建游标执行查询,包括数据的增删改查,并通过 `commit()` 和 `rollback()` 管理事务,最后需关闭游标和连接以释放资源。
127 0
|
2月前
|
计算机视觉 Python
Python中Pillow库的常见用法和代码示例
Pillow是Python中广泛使用的图像处理库,支持丰富的图像操作功能,包括但不限于打开、保存、缩放、裁剪、旋转、调色等。本文通过一系列示例介绍Pillow的基本用法,涵盖图像的加载与显示、尺寸调整、裁剪与旋转、亮度调整、格式转换、滤镜应用、图像合成及像素级操作等。首先需通过`pip install pillow`安装库,随后可通过导入`PIL.Image`等模块开始图像处理任务。无论是初学者还是进阶用户,都能从Pillow提供的强大功能中获益。
85 0
|
2月前
|
Python
Python pip 操作的几种用法
Python pip 操作的几种用法
56 0