如何打印出一个字典而不需要新的字典变量?

2024-09-24 02:27:35 发布

您现在位置:Python中文网/ 问答频道 /正文

如何同时创建和附加字典?你知道吗

def buildList(theDict):
    array=[]
    for a,b in theDict.iteritems():
        array.append([a,b])

    return array
print buildList({"a": 1,"b": 2,"c": 3})

这会打印出一个列表列表。我想打印出字典列表,而不创建任何新变量。你知道吗


Tags: in列表forreturn字典defarrayprint
3条回答

array.append({a:b})而不是array.append([a,b])

或者使用List Comprehension

array = [{a:b} for a,b in theDict.iteritems()]

如果我正确理解你想要的,这个代码应该可以工作。你知道吗

def list_of_dicts(d):
    return [{key:value} for key, value in d.iteritems()]

print list_of_dicts({"a": 1,"b": 2,"c": 3})

list_of_dicts()使用列表理解,它为传入字典中的每个键/值对创建一个新的dict条目。你知道吗

你知道如何使用列表理解来重新编写你的示例,并返回列表列表吗?它只需要在上面更改三个字符。你知道吗

p.S.I使用PEP8名称(小写而非camelCase)。你知道吗

你的答案已经差不多是你需要的了。当您附加到列表时,您正在使用以下代码位创建一个新列表:[a, b]

所以,用一个不同的代码来替换这段代码,一个创建字典的代码。你知道怎么编字典!你知道吗

如果你需要一个提示,看看我的另一个答案中的列表理解,看看你是否能弄清楚列表理解是如何创建新的字典值的。你知道吗

我知道你能弄明白的!你知道吗

相关问题 更多 >