我在玩一些python循环。我对使用“ for”循环非常熟悉:
for x in y:
do something
您还可以使用循环创建一个简单列表:
i = []
for x in y:
i.append(x)
然后我最近在Stack上发现了一种不错的高效循环类型来构建一个列表(这种类型的循环有名称吗?我真的很想知道,以便可以对其进行更好地搜索):
[x.name for x in y]
好的,话虽如此,我想进一步讲解最后一种循环,我尝试使用相同的逻辑类型构建python字典:
{x[row.SITE_NAME] = row.LOOKUP_TABLE for row in cursor}
而不是使用:
x = {}
for row in cursor:
x[row.SITE_NAME] = row.LOOKUP_TABLE
我在等号上收到一条错误消息,告诉我这是无效的语法。我相信在这种情况下,这基本上是在告诉我等号是条件子句(==),而不是变量的声明。
我的第二个问题是,我可以使用这种类型的循环构建python字典吗?如果是这样,我将如何组织它?
简短格式如下(称为 dict理解 ,类似于 列表理解 , 集合理解 等):
x = { row.SITE_NAME : row.LOOKUP_TABLE for row in cursor }
因此,通常给定一些_container
带有某种元素的元素和一个_value
为给定元素返回要添加到字典中此键的值的函数:
{ _key : _value(_key) for _key in _container }
我有一个熊猫的数据框 并希望创建一个这样的词典 我从来没有处理过熊猫数据框的字典,所以我不知道从哪里开始。我想我必须使用嵌套的for循环,但不知道如何循环数据帧中的动物部分。 提前谢谢。
问题内容: 我想创建一个字典,其值为列表。例如: 如果我做: 我收到一个KeyError,因为d […]不是列表。在这种情况下,我可以在分配a后添加以下代码以初始化字典。 有一个更好的方法吗?可以说,直到进入第二个循环,我才知道需要的键。例如: 然后可以替代 与 处理此问题的最佳方法是什么?理想情况下,追加将“有效”。有什么方法可以表达我想要空列表的字典,即使我第一次创建列表时也不知道每个键? 问
问题内容: 我是一名基本的python程序员,因此希望我的问题的答案会很容易。我正在尝试拿字典并将其附加到列表中。然后,字典更改值,然后再次循环添加。似乎每次执行此操作时,列表中的所有词典都会更改其值以匹配刚刚添加的值。例如: 我认为结果是,但是我得到了: 任何帮助是极大的赞赏。 问题答案: 您需要追加一个 副本 ,否则您将一遍又一遍地添加对同一词典的引用: 我用和代替和; 您不想掩盖内置类型。
问题内容: 我有一个看起来像这样的csv: 我想制作一个以类别为键的字典,并以剩余数据作为值的字典列表。所以它看起来像这样: (此处缩进以提高可读性)。 我像下面的代码片段一样尝试了一下,但是到那儿我什么也没得到: 问题答案: 使用:
问题内容: 我正在学习python,我像这样循环循环,将json转换为字典:它可以工作,但这是正确的方法吗?谢谢 :) 这里的JSON: 这里输出: 问题答案: 总体看来还不错。 无需先读取文件,然后使用负载。您可以直接使用负载。 为此,使用i和k是不正确的。它们通常仅应用于整数循环计数器。在这种情况下,它们是关键,因此更合适的方法会更好。也许重命名为和为?传达更多信息的东西将更易于阅读和维护。
问题内容: 我正在处理一个复杂的嵌套字典和列表数据结构。我需要将数据展平并将所有嵌套项都置于0级。有关更多说明,请参见以下示例: 我需要将其展平为: 我从这篇文章的第一个答案中获得了参考,但是只有在我嵌套了字典的情况下它才可以工作,如果列表嵌套在字典中并且更多的词典嵌套在这些列表中,则它不能工作。 我对代码做了一些修改以适合我的用例,但是此代码不起作用 当我在此处粘贴代码时,缩进变得混乱。但我真的