在 Python 中一行打印一个字符串和一个列表

目录

Print a String and a List in one line in Python

  1. 在 Python 中一行打印一个字符串和一个列表
  2. 使用带逗号的 print() 在一行中打印一个字符串和一个列表
  3. 在 Python 的一行中打印整数列表
  4. 使用 str.join() 在一行中打印整数列表

在 Python 中在一行中打印一个字符串和一个列表

使用格式化字符串文字在一行中打印字符串和列表,例如
print(f'{my_str}{my_list}'). 格式化的字符串文字让我们通过在字符串前加上前缀来在字符串中包含表达式和变量f

主程序
my_str = 'The numbers are: ' my_list = [4, 8, 2] # ✅ print string and list in one line (f-string) result = f'{my_str}{my_list}' print(result) # 👉️ The numbers are: [4, 8, 2] # --------------------------------------------- # ✅ print string and list in one line (comma-separated args) print(my_str, my_list, sep='') # 👉️ The numbers are: [4, 8, 2] # --------------------------------------------- # ✅ print string and list in one line (unpacking) print('The numbers are:', *my_list) # 👉️ The numbers are: 4 8 2 # --------------------------------------------- # ✅ print string and list in one line (str.join()) result = my_str + ', '.join(str(item) for item in my_list) print(result) # 👉️ The numbers are: 4, 8, 2

第一个示例使用格式化字符串文字在一行中打印字符串和列表。

主程序
my_str = 'The numbers are: ' my_list = [4, 8, 2] result = f'{my_str}{my_list}' print(result) # 👉️ The numbers are: [4, 8, 2]
格式化字符串文字 (f-strings) 让我们通过在字符串前加上f.
主程序
my_list = [4, 8, 2] result = f'The numbers are: {my_list}' print(result) # 👉️ The numbers are: [4, 8, 2]

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

或者,您可以print()使用多个逗号分隔的参数调用该函数。

使用带逗号的 print() 在一行中打印一个字符串和一个列表

将多个以逗号分隔的参数传递给该print()函数,以在一行中打印一个字符串和一个列表。print()函数将打印由空格分隔的值。

主程序
my_str = 'The numbers are:' my_list = [4, 8, 2] print(my_str, my_list) # 👉️ The numbers are: [4, 8, 2]

我们将多个以逗号分隔的参数传递给该print()函数,以在同一行打印一个字符串和一个列表。

如果需要调整值之间的分隔符,可以使用sep关键字参数。
主程序
print('abc', [1, 2, 3], sep='') # 👉️ abc[1, 2, 3] print('abc', [1, 2, 3]) # 👉️ abc [1, 2, 3]

默认情况下,sep参数设置为空格。

主程序
print('a', 'b', 'c', sep="_") # 👉️ "a_b_c" print('a', 'b', 'c', sep="_", end="!!!") # 👉️ "a_b_c!!!"

我们为关键字参数传递的字符串end被插入到字符串的末尾。

默认情况下,end参数设置为换行符 ( \n)。

您还可以使用可迭代拆包运算符在一行中打印一个字符串和一个列表。
主程序
my_list = [4, 8, 2] print('The numbers are:', *my_list) # 👉️ The numbers are: 4 8 2

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

主程序
print(*my_list) # 👉️ 4 8 2 print(*my_list, sep=', ') # 👉️ 4, 8, 2

如果需要调整元素之间的分隔符,请使用sep关键字参数。

您也可以使用该str.join()方法获得相同的结果。

主程序
my_str = 'The numbers are: ' my_list = [4, 8, 2] result = my_str + ', '.join(str(item) for item in my_list) print(result) # 👉️ The numbers are: 4, 8, 2

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

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

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

如果您的列表不包含数字,请在调用该
str.join()方法时直接将其传递。

主程序
my_str = 'The letters are: ' my_list = ['a', 'b', 'c'] result = my_str + ', '.join(my_list) print(result) # 👉️ The letters are: a, b, c

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

主程序
my_str = 'The letters are: ' my_list = ['a', 'b', 'c'] result = my_str + '-'.join(my_list) print(result) # 👉️ The letters are: a-b-c

如果您不需要分隔符而只想将可迭代的元素连接到一个字符串中,请在join()空字符串上调用该方法。

主程序
my_str = 'The letters are: ' my_list = ['a', 'b', 'c'] result = my_str + ''.join(my_list) print(result) # 👉️ The letters are: abc

在 Python 的一行中打印整数列表

使用可迭代拆包运算符在一行中打印整数列表,例如print(*list_of_integers). 可迭代解包运算符将在print()函数调用中解包列表,将整数打印在一行上。

主程序
list_of_integers = [2, 4, 8] # ✅ print list of integers in one line (unpacking) print(*list_of_integers) # 👉️ 2 4 8 print(*list_of_integers, sep=', ') # 👉️ 2, 4, 8 # --------------------------------------- # ✅ print list of integers in one line (str.join()) result = ', '.join(str(item) for item in list_of_integers) print(result) # 👉️ 2, 4, 8

我们使用可迭代拆包运算符在一行中打印整数列表。

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

主程序
list_of_integers = [2, 4, 8] print(*list_of_integers) # 👉️ 2 4 8 print(*list_of_integers, sep=', ') # 👉️ 2, 4, 8k
默认情况下,列表项使用空格分隔符打印,因为参数设置为空格。 sep

您可以将sep参数设置为任何其他值,以使用不同的分隔符打印整数。

主程序
list_of_integers = [2, 4, 8] print(*list_of_integers, sep='-') # 👉️ 2-4-8 print(*list_of_integers, sep='-', end='!!!') # 👉️ 2-4-8!!!

我们为关键字参数传递的字符串end被插入到字符串的末尾。

默认情况下,end参数设置为换行符 ( \n)。

或者,您可以使用该str.join()方法。

使用 str.join() 在一行中打印整数列表

要在一行中打印整数列表:

  1. 将列表中的每个整数转换为字符串。
  2. 使用该str.join()方法将列表连接成一个字符串。
  3. 使用print()函数打印结果。
主程序
list_of_integers = [2, 4, 8] result = ', '.join(str(item) for item in list_of_integers) print(result) # 👉️ 2, 4, 8

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

如果可迭代对象中有任何非字符串值,join()方法将引发一个。TypeError

这就是为什么我们必须在调用之前将列表中的每个项目转换为字符串
join()

我们使用生成器表达式来遍历列表。

生成器表达式用于对每个元素执行某些操作或选择满足条件的元素子集。

在每次迭代中,我们将当前整数传递给str()类并返回结果。

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

主程序
list_of_integers = [2, 4, 8] result = ' '.join(str(item) for item in list_of_integers) print(result) # 👉️ 2 4 8

如果您不需要分隔符而只想将列表的元素连接到一个字符串中,请在join()空字符串上调用该方法。

主程序
list_of_integers = [2, 4, 8] result = ''.join(str(item) for item in list_of_integers) print(result) # 👉️ '248'