在 Python 中将字典的键或值连接到字符串中

目录

Join the Values of a dictionary into a string in Python

  1. 将字典的值加入 Python 中的字符串
  2. 将字典的键加入 Python 中的字符串

在 Python 中将字典的值连接到字符串中

将字典的值连接成一个字符串:

  1. str.join()在字符串分隔符上调用该方法。
  2. values()在 dict 上调用方法并将结果传递给join()
    方法。
  3. 结果将是一个字符串,其中包含由提供的分隔符分隔的字典值。
主程序
my_dict = {'a': 'one', 'b': 'two', 'c': 'three'} values = ' '.join(my_dict.values()) print(values) # 👉️ one two three keys = ' '.join(my_dict) print(keys) # 👉️ a b c items = ' '.join(f'{key} {value}' for key, value in my_dict.items()) print(items) # 👉️ a one b two c three

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

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

主程序
my_dict = {'a': 'one', 'b': 'two', 'c': 'three'} values = ','.join(my_dict.values()) print(values) # 👉️ one,two,three

使用 map() 处理非字符串值

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

您可以使用该map()函数将每个字典值转换为字符串,然后再将它们传递给该join()方法。

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = ' '.join(map(str, my_dict.values())) print(values) # 👉️ 1 2 3

map ()函数将一个函数和一个可迭代对象作为参数,并使用可迭代对象的每个项目调用该函数。

map()函数将每个字典值传递给
str()类。

使用生成器表达式处理非字符串值

或者,您可以使用
生成器表达式

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = ' '.join(str(val) for val in my_dict.values()) print(values) # 👉️ 1 2 3

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

dict.values方法返回字典值的新视图

主程序
my_dict = {'id': 1, 'name': 'Bobby'} print(my_dict.values()) # 👉️ dict_values([1, 'Bobby'])

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

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = '-'.join(str(val) for val in my_dict.values()) print(values) # 👉️ 1-2-3

如果您需要用空格连接字典的值,请对包含空格的字符串调用该方法。

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = ' '.join(str(val) for val in my_dict.values()) print(values) # 👉️ '1 2 3'

同样,您可以使用换行符 ( \n) 将值与dict换行符连接起来。

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = '\n'.join(str(val) for val in my_dict.values()) # 1 # 2 # 3 print(values)

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

主程序
my_dict = {'a': 1, 'b': 2, 'c': 3} values = ''.join(str(val) for val in my_dict.values()) print(values) # 👉️ '123'

在 Python 中将字典的键连接到字符串中

如果您需要将字典的键连接成一个字符串:

  1. str.join()在字符串分隔符上调用该方法。
  2. 将字典传递给join()方法。
  3. 结果将是一个字符串,其中包含由提供的分隔符分隔的字典键。
主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant'} keys = ', '.join(my_dict) print(keys) # 👉️ 'name, country, job' values = ', '.join(my_dict.values()) print(values) # 👉️ Bobby, Belgium, accountant items = ', '.join(f'{key} {value}' for key, value in my_dict.items()) print(items) # 👉️ name Bobby, country Belgium, job accountant

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

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

如果您的字典包含整数键(或其他类型),请在调用之前将它们转换为字符串join()

主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant', 100: 200} keys = ', '.join(map(str, my_dict)) print(keys) # 👉️ 'name, country, job, 100' values = ', '.join(map(str, my_dict.values())) print(values) # 👉️ Bobby, Belgium, accountant, 200 items = ', '.join(f'{key} {value}' for key, value in my_dict.items()) print(items) # 👉️ name Bobby, country Belgium, job accountant, 100 200

map ()函数将一个函数和一个可迭代对象作为参数,并使用可迭代对象的每个项目调用该函数。

在将它们传递给方法之前,我们使用该函数将字典中的每个键和值转换为字符串str.join()

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

主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant'} keys = '-'.join(my_dict) print(keys) # 👉️ 'name-country-job'

如果您需要用空格连接字典的键,请对包含空格的字符串调用该方法。

主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant'} keys = ' '.join(my_dict) print(keys) # 👉️ 'name country job'

同样,您可以使用换行符 ( \n) 将键与dict换行符连接起来。

主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant'} keys = '\n'.join(my_dict) # name # country # job print(keys)

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

主程序
my_dict = {'name': 'Bobby', 'country': 'Belgium', 'job': 'accountant'} keys = ''.join(my_dict) print(keys) # 👉️ 'namecountryjob'

额外资源

您可以通过查看以下教程来了解有关相关主题的更多信息: