Python中FOR循环是如何工作的

Python中FOR循环是如何工作的,python,Python,我有以下Python代码,我不确定这里的for循环是如何工作的 cur.execute("SELECT CUST_ID, COMPANY, LASTNAME, CITY, STATE FROM mytable") colnames = [desc[0] for desc in cur.description] 这对工作有什么好处 [desc[0] for desc in cur.description] 什么是de

我有以下Python代码,我不确定这里的for循环是如何工作的

cur.execute("SELECT CUST_ID, COMPANY, LASTNAME, CITY, STATE FROM 
mytable")                            

colnames = [desc[0] for desc in cur.description]      
这对工作有什么好处

[desc[0] for desc in cur.description]   

什么是
desc[0
]?

根据您给我们的代码,似乎
desc
本身就是一个数组,因此
colnames
是从
cur.description
中的每个
desc
中获得的所有
desc[0]
的数组


desc[0]
是desc中的第一项,因为Python中的数组是零索引的。

根据您给我们的代码,似乎
desc
本身就是一个数组,因此
colnames
是从
cur.description
中的每个
desc
中获得的所有
desc[0]/code>的数组


desc[0]
是desc中的第一项,因为Python中的数组是零索引的。

它特别使用iterable对象下一个方法,它将消耗对象中的值,直到停止迭代,它的工作原理类似于生成器对象….

它使用iterable对象,尤其是下一步方法它将消耗对象内部的值,直到停止迭代,它的工作原理类似于生成器对象….

如果对某个对象有疑问,请尝试重新创建该对象。尽管它可能是任何不合适的东西,但我们可以假设它只是一个列表,然后:

description = [['first'], ['second', 'third'], [x, y, z], [...], ...]
colnames = [desc[0] for desc in description]
在输出中,您将有:
['first','second',x,…]

当对某件事有疑问时,试着重新创建它。尽管它可能是任何不合适的东西,但我们可以假设它只是一个列表,然后:

description = [['first'], ['second', 'third'], [x, y, z], [...], ...]
colnames = [desc[0] for desc in description]
在输出中,您将有:

['first',second',x,…]
desc[0]
desc
中的第一个元素。包含
desc[0]
的结构称为
desc[0]
desc
中的第一个元素。包含
desc[0]
的结构称为conn=db2.connect()cur=conn.cursor()cur.execute(“从\zendpp7.sp_CUST WHERE COUNTRY='US'中选择客户ID、公司、姓氏、城市、州)colnames=[desc[0]for desc in cur.description]cur.description是一个列表,看起来colnames也是一个列表。您应该在主帖子中编辑代码。不管怎样,您的问题已经得到了回答。是的,我已经解释了为什么它是上面的列表。conn=db2.connect()cur=conn.cursor()cur.execute(“从\zendpp7.sp_CUST WHERE COUNTRY='US')中选择客户ID、公司、姓氏、城市、州)colnames=[desc[0]作为当前描述中的描述]cur.description是一个列表,看起来Colnames也是一个列表。您应该在主要帖子中添加代码编辑。无论如何,您的问题已经得到了回答。是的,我已经解释了为什么它是上面的一个列表。对于那些不熟悉python的人来说,这并不完全清楚
开始发挥作用对于那些不熟悉python的人来说,
next()
开始发挥作用的地方并不十分清楚为什么我们没有获得“第三”?@AJAY、
second
third
在同一个列表中,因为我们正在执行
desc[0]
,我们得到了第二个元素,即第一个元素。请注意,它是列表中的列表。
[['first']、['second'、'third']、[…]、…]
收到了,谢谢,我在哪里可以在列表中找到好的解释python@AJAY,这很难说,但在谷歌搜索中键入python列表将为您提供大量的网站,您可以从中挖掘。这里有一些:data structure=>的python文档,这里有一个随机=>尝试一下。为什么我们没有得到“第三个”“?@AJAY、
second
third
在同一个列表中,因为我们做了
desc[0]
,我们得到了
second
,即第一个元素。请注意,它是列表中的列表<代码>['first']、['second'、[third']、[…]、…]收到了谢谢,我在哪里可以在列表中找到好的解释python@AJAY,这很难说,但在谷歌搜索中键入python列表将为您提供大量可以挖掘的网站。这里有一些:数据结构=>的Python文档,这里有一个随机=>试试它们。