Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.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_Python 2.7_List_Dictionary - Fatal编程技术网

Python 如何将返回的词典转换为一个大列表?

Python 如何将返回的词典转换为一个大列表?,python,python-2.7,list,dictionary,Python,Python 2.7,List,Dictionary,我有一小段代码,用于查询数据库中具有特定属性的作业。然后我想单独隔离作业ID,我已经这样做了,但它会在一堆不同的字典中返回结果 如何将所有字典合并在一起,然后将其转换为一个只有作业ID的大列表?我正在使用Python 2.7 import pprint with aftractor.utils.tractor_connection() as tq: ma_jobs = tq.jobs('not done and maxactive', columns=['jid', 'title']

我有一小段代码,用于查询数据库中具有特定属性的作业。然后我想单独隔离作业ID,我已经这样做了,但它会在一堆不同的字典中返回结果

如何将所有字典合并在一起,然后将其转换为一个只有作业ID的大列表?我正在使用Python 2.7

import pprint


with aftractor.utils.tractor_connection() as tq:
    ma_jobs = tq.jobs('not done and maxactive', columns=['jid', 'title'])
    ma_search = tq.jobs('not done and maxactive', columns=['jid'])
    pp = pprint.PrettyPrinter(indent=4)
    pp.pprint(ma_jobs)

print ma_search
返回值:

{u'吉德:3221482},{u'吉德:3221482},{u'吉德:3221482},{u'吉德:3221109},{u'吉德:32211109},{u''吉德:327827政政政绩:3207827::,{{7878787827},,,,,{u'吉德:3221482},,,,,,{u'吉德:3221482:3221482},,,,,,,,,,,,,{u'吉德:3228960,},},,,,,,,,{u'吉德:3228除除除除除除除除除除数:3228960,,,,,,,,,,,,,,,,,,,,,,,,{学校学校:3228周五,,,,,,,{{............u'jid:3227985},{u'jid:3227984},{u'jid:3227980},{u'jid:3229049},{u'jid':3228337}]

我想要的是:

[3207827、3221652、3221482、3221109、3229185、3228951、3228953、3228952、3228960、3228956、3228950、32282022、3227226、3227982、3227985、3227984、3227980、3229049、322837]


使用以下理解:

>>> [d[u'jid'] for d in ma_jobs]
[3207827,
 3221652,
 3221482,
 3221109,
 3229185,
 3228951,
 3228953,
 3228952,
 3228960,
 3228956,
 3228950,
 3228022,
 3227226,
 3227982,
 3227985,
 3227984,
 3227980,
 3229049,
 3228337]

基本上,您使用的是列表理解。
ma_jobs
中的每个元素都是一个字典,其中有一个元素的键是
u'jid'
,因此您基本上是获取与该键关联的值,并将其添加到动态创建的列表中。

使用以下理解:

>>> [d[u'jid'] for d in ma_jobs]
[3207827,
 3221652,
 3221482,
 3221109,
 3229185,
 3228951,
 3228953,
 3228952,
 3228960,
 3228956,
 3228950,
 3228022,
 3227226,
 3227982,
 3227985,
 3227984,
 3227980,
 3229049,
 3228337]

基本上,您使用的是列表理解。
ma_jobs
中的每个元素都是一个字典,其中有一个元素的键是
u'jid'
,因此您基本上是获取与该键相关联的值,并将其添加到动态创建的列表中。

您可以使用
map
函数在之后执行此操作ode>ma_jobs=tq.jobs('notdone and maxactive',columns=['jid','title']):

结果:

[3207827, 3221652, 3221482, 3221109, 3229185, 3228951, 3228953, 3228952, 3228960, 3228956, 3228950, 3228022, 3227226, 3227982, 3227985, 3227984, 3227980, 3229049, 3228337]

您可以使用
map
函数在
ma_jobs=tq.jobs('not done and maxactive',columns=['jid','title'])之后执行此操作。

结果:

[3207827, 3221652, 3221482, 3221109, 3229185, 3228951, 3228953, 3228952, 3228960, 3228956, 3228950, 3228022, 3227226, 3227982, 3227985, 3227984, 3227980, 3229049, 3228337]

我不确定是否遵循,您是否可以详细说明我将如何在现有结构中实现这段代码?@AMist,我刚刚添加了一个更详细的解释,这段代码在Python 2中工作。我不确定是否遵循,您是否可以详细说明我将如何在现有结构中实现这段代码ng structure?@AMist,我刚刚添加了一个更详细的解释,这段代码在Python 2中工作。有几个问题,这摆脱了我的ma_jobs查询,它与ma_search查询是分开的。我两者都需要。我尝试以相同的格式将其应用于ma_search,但它显示map()至少需要两个参数。此外,它以垂直格式返回列表,如上图所示。如果我需要一个水平格式,如上图所示。作为结果发布的词典列表是
ma_jobs
ma_search
?对于格式,您所说的水平是什么意思?我得到的输出是ng是水平的。我在每一行上都有一个JID,就像Imiguelvargasf在他的评论中一样。字典的结果是ma_search@A如果您能发布一些来自
ma_search
的示例数据,您将帮助我解决此问题。有两个问题,这将摆脱我的ma_jobs查询,它与ma_search查询分开。我需要两者。我尝试了以相同的格式将其应用于ma_搜索,但上面显示map()至少需要两个参数。此外,它以垂直格式返回列表,如上图所示。如果我需要一个水平格式,如上图所示。作为结果发布的词典列表是
ma_jobs
ma_search
?对于格式,您所说的水平是什么意思?我得到的输出是ng是水平的。我在每一行上都有一个JID,就像Imiguelvargasf在他的评论中一样。字典的结果是ma_search@A如果您能发布一些来自
ma_search
的示例数据,您将帮助我解决此问题。