有没有一种方法可以从python中的字典中从键值对中创建字符串?
我有一本字典:有没有一种方法可以从python中的字典中从键值对中创建字符串?,python,Python,我有一本字典: {"John": "Doe", "Jane" : "Smith", "Jack" : "Poland"} 我想创建一个列表 ["John Doe", "Jane Smith", "Jack Poland"] 给定dict名称,可以在列表中使用f字符串 [f'{key} {value}' for k
{"John": "Doe", "Jane" : "Smith", "Jack" : "Poland"}
我想创建一个列表
["John Doe", "Jane Smith", "Jack Poland"]
给定dict
名称
,可以在列表中使用f字符串
[f'{key} {value}' for key, value in names.items()]
列表理解中的f字符串将是最有效的,看起来好像有人已经回答了 另一种可能更容易理解的方法是,只需对循环执行一次
,然后在字典中迭代一次。使用一些您可能已经学习过的python字符串连接,然后将其附加到新列表中。
(仅供参考:f字符串方法具有相同的结果,代码更少)
使用字符串连接:
full_name = []
name_dict = {"John": "Doe", "Jane" : "Smith", "Jack" : "Poland"}
for first, last in name_dict.items():
name = first + " " + last
full_name.append(name)
print(full_name)
还有一些其他的方法,但这一个和f-字符串弹出在我的权利蝙蝠
您还可以在顶部定义多个变量和列表,这比将所有内容放在一行稍微少一点混乱,类似于您可能已经完成的其他练习,也更具组织性
另一件巧妙的事情是,您在for循环中的一个单独变量中有一个名称;在添加它之前,它还不在新列表中。这很酷,因为如果您想对组合字符串执行任何操作,而不仅仅是将其附加到列表中,您也可以使用该变量。尝试以下方法:
dic = {"John": "Doe", "Jane" : "Smith", "Jack" : "Poland"}
lst =[key+" "+value for key,value in dic.items()]
print(lst)
输出:
['Jack Poland', 'John Doe', 'Jane Smith']
到目前为止你试过什么?给我们看看你的代码!将您的代码添加到问题中。在评论中,它是不可读的。