Python 使用format()格式化容器

Python 使用format()格式化容器

在使用Python时,容器样式可以是提高代码可读性和可维护性的有用方法。你可以使用这种方法快速简单地样式化列表、元组、字典、集合甚至类。通过使用内置的 format() 方法,你可以通过对齐列、添加填充和设置精度来调整数据的呈现方式。在本文中,我们将深入探讨在Python中使用format()来格式化容器,包括各种类型的容器以及如何使用format()函数。

使用format()格式化容器

假设我们有一个数字列表,我们想通过使用逗号和空格来分隔每个数字来组织它们。

示例

my_list = [1, 2, 3, 4, 5]
formatted_list = ', '.join(['{}'.format(x) for x in my_list])
print(formatted_list)

输出

1, 2, 3, 4, 5

通过使用 join() 方法,格式化数字的集合与逗号和空格分隔符连接在一起。枚举中的每个整数值都将替代 format() 方法中的占位符。

尽管是不可变的, tuples 与列表相似,因为它们的内容在形成后不能更改。在这种情况下,我们再次使用 join() 方法,用逗号和空格连接格式化的元组组件。

示例

my_tuple = ('apple', 'banana', 'orange')
formatted_tuple = ', '.join(['{}'.format(x) for x in my_tuple])
print(formatted_tuple)

输出

apple, banana, orange

通过结合 字典 的值和format()方法可以对字典进行格式化。

示例

my_dict = {'name': 'ABCJohn', 'age': 33, 'city': 'Los Angeles'}
formatted_dict = 'Name: {name}, Age: {age}, City: {city}'.format(**my_dict)
print(formatted_dict)

输出

Name: ABCJohn, Age: 33, City: Los Angeles

在这种情况下,我们使用了与字典中的值匹配的 format() 方法的占位符。字典使用 **my dict 语法进行解包,并将其内容作为关键字参数传递给 format() 方法。同样地,可以使用 join() 和 format() 函数来编写集合推导式。

示例

my_set = {1, 2, 3, 4, 5}
formatted_set = ', '.join(['{}'.format(x) for x in my_set])
print(formatted_set)

输出

1, 2, 3, 4, 5

同样的方法可以用于 类信息

示例

class Person:
   def __init__(self, name, age):
      self.name = name
      self.age = age
my_person = Person('John', 30)
formatted_person = 'Name: {p.name}, Age: {p.age}'.format(p=my_person)
print(formatted_person)

输出

Name: John, Age: 30

将我们的类的实例作为关键字参数传递给format()函数是一个可行的解决方案

自定义选项

除了格式化容器外,format()函数还提供了自定义数据显示方式的选项。一些常见选项包括 填充、对齐和精度。

例如,要在指定的宽度内右对齐文本,我们可以使用’>’选项。想象一组我们拥有的字符集 –

my_list = ['apple', 'banana', 'orange']

我们可以使用以下代码来格式化此列表,使每个字符串在宽度为10的字段中右对齐。

示例

my_list = ['apple', 'banana', 'orange']
for fruit in my_list:
   print('{:>10}'.format(fruit))

输出

apple
banana
orange

< option和 ^ option可以分别用于将行置于框中的中央和左对齐。另一个有用的选择是精度选择,它使我们能够选择小数点后显示多少位数。考虑一个浮点值的集合作为例子 –

my_floats = [1.23456, 2.34567, 3.45678]

我们可以使用以下代码对这些数字进行格式化,只显示小数点后两位数:

my_floats = [1.23456, 2.34567, 3.45678]
for num in my_floats:
   print('{:.2f}'.format(num))

输出

1.23
2.35
3.46

此外,我们可以在format()与f-strings和其他文本编辑方法结合使用。这使我们能够设计更复杂和灵活的输出行。现在我们知道如何使用format()对容器进行样式化,让我们来看一个完整的代码块,以示例说明Python中的容器格式化。 例子

my_dict = {'apple': 1.23, 'banana': 2.34, 'orange': 3.45}
for key, value in my_dict.items():
   print('{:<10}{:.2f}'.format(key, value))

输出

apple     1.23
banana    2.34
orange    3.45

通过使用这个代码块,创建了一个将三种水果的标题链接到它们相应值的字典。for循环迭代遍历字典的条目,格式化每个键值组合,使值显示两位小数点后,键在宽度为10的字段中左对齐。使用format()进行容器编辑在现实世界中有很多应用。例如,我们可以使用它来美化数据分析过程中的表格或图表。在网络编程中,我们可以使用它以用户友好的方式展示内容。在自动化中,我们可以使用它来生成记录或文件。

结论

总而言之,使用Python的 format() 函数进行容器格式化是一种强大的工具,使我们能够以灵活和易懂的方式呈现数据。通过使用format()函数与各种容器种类和格式化选项,我们可以生成符合我们要求的内容。我相信这篇文章能帮助您理解Python中的容器格式化,并鼓励您自行深入学习。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程