Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有一种方法可以从python中的字典中从键值对中创建字符串?_Python - Fatal编程技术网

有没有一种方法可以从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']                                                                                                                                
                                          

到目前为止你试过什么?给我们看看你的代码!将您的代码添加到问题中。在评论中,它是不可读的。