在 Python 中打印列表列表

在 Python 中打印列表列表

Print a list of lists in Python

要打印列表列表:

  1. 使用for循环遍历列表。
  2. 访问每个子列表中的特定项目。
  3. 使用print()函数打印结果。
主程序
list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] for sublist in list_of_lists: # 1 alice Austria # 2 bobbyhadz Bulgaria # 3 carl Canada print(sublist[0], sublist[1], sublist[2])

我们使用for循环遍历列表列表并访问每个子列表中的特定元素。

如果您需要打印每个子列表的所有项目,您可以使用可迭代的拆包运算符。
主程序
list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] for sublist in list_of_lists: # 1 alice Austria # 2 bobbyhadz Bulgaria # 3 carl Canada print(*sublist)

*迭代解包运算符
使我们能够在函数调用、推导式和生成器表达式中解包可迭代对象。

如果需要以特定方式格式化每一行,则可以使用格式化字符串文字。

主程序
list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] for sublist in list_of_lists: # Name: alice | Country: Austria # Name: bobbyhadz | Country: Bulgaria # Name: carl | Country: Canada print(f'Name: {sublist[1]} | Country: {sublist[2]}')
格式化字符串文字 (f-strings) 让我们通过在字符串前加上f.
主程序
var1 = 'bobby' var2 = 'hadz' result = f'{var1}{var2}' print(result) # 👉️ bobbyhadz

确保将表达式括在大括号 –{expression}中。

如果您需要以
表格格式打印列表列表,您可以使用相同的方法。

主程序
headers = [ 'ID', 'Name', 'Country' ] list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] print(f'{headers[0]: <10}{headers[1]: <15}{headers[2]}') # ID Name Country # 1 alice Austria # 2 bobbyhadz Bulgaria # 3 carl Canada for row in list_of_lists: print(f'{row[0]: <10}{row[1]: <15}{row[2]}')

格式化字符串文字还使我们能够

在表达式块中使用
格式特定的迷你语言。

主程序
my_str = 'hi' # 👇️ left-aligned result = f'{my_str: <6}' print(repr(result)) # 👉️ 'hi ' # 👇️ right-aligned result = f'{my_str: >6}' print(repr(result)) # 👉️ ' hi'

冒号和小于号之间的空格是填充符。

小于号或大于号是对齐方式。

小于号使字符串左对齐,大于号使字符串右对齐。

我们首先格式化并打印标题,然后遍历列表并打印每一行。

str.join()如果需要使用分隔符连接每个子列表的元素,则可以使用该方法。

主程序
list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] # 1, alice, Austria # 2, bobbyhadz, Bulgaria # 3, carl, Canada for sublist in list_of_lists: result = ', '.join(str(item) for item in sublist) print(result)

str.join方法将一个可迭代对象作为参数并返回一个字符串,该字符串是可迭代对象中字符串的串联。

请注意,TypeError如果可迭代对象中有任何非字符串值,该方法将引发 a。

如果您的 iterable 包含数字或其他类型,请在调用之前将所有值转换为字符串join()

调用该方法的字符串用作元素之间的分隔符。

我们在示例中使用了逗号和空格 ( , ),但您可以使用任何其他分隔符。

如果您需要将列表的列表连接成一个字符串,请使用两次调用该
str.join()方法。

主程序
list_of_lists = [ [1, 'alice', 'Austria'], [2, 'bobbyhadz', 'Bulgaria'], [3, 'carl', 'Canada'], ] # 1, alice, Austria # 2, bobbyhadz, Bulgaria # 3, carl, Canada result = ', '.join(' '.join(str(item) for item in sublist) for sublist in list_of_lists) print(result) # 👉️ 1 alice Austria, 2 bobbyhadz Bulgaria, 3 carl Canada
对该方法的内部调用连接了当前迭代join()的元素。 sublist

我们在连接每个子列表的元素时使用了空格分隔符,但您可以使用任何其他分隔符。

在调用之前,我们使用str()该类将每个值转换为字符串
join()

最后一步是使用该join()方法将列表中的子列表连接成一个带有逗号分隔符的字符串。

发表评论