在字典中进行选择 (Python)
Imbricated for selection in dict (Python)
来自 MATLAB,我是 Python 的新手,我仍在努力理解它的语法。
我成功地做了我想做的事,但我确信有一种正确的方法只用一行就可以做到...
serialsToFind = ['43788273-1', '45788259-2', '87788202']
dataSelection = []
from numpy import linspace
serials = linspace(0,len(data)-1,len(data), dtype='int')
for serialToFind in serialsToFind:
for serial in serials:
if data[serial]['SerialNumber'][:8] == serialToFind[:8]:
dataSelection.append(data[serial])
非常感谢,
最大
你不说 data
是什么。但是,您可能想要的是
dataSelection = [item for serialToFind in serialsToFind for item in data
if item['SerialNumber'][:8] == serialToFind[:8]]
注意:一般情况下,而不是做
serials = linspace(0,len(data)-1,len(data), dtype='int')
for serial in serials:
就这样
for serial in range(len(data)):
来自 MATLAB,我是 Python 的新手,我仍在努力理解它的语法。 我成功地做了我想做的事,但我确信有一种正确的方法只用一行就可以做到...
serialsToFind = ['43788273-1', '45788259-2', '87788202']
dataSelection = []
from numpy import linspace
serials = linspace(0,len(data)-1,len(data), dtype='int')
for serialToFind in serialsToFind:
for serial in serials:
if data[serial]['SerialNumber'][:8] == serialToFind[:8]:
dataSelection.append(data[serial])
非常感谢,
最大
你不说 data
是什么。但是,您可能想要的是
dataSelection = [item for serialToFind in serialsToFind for item in data
if item['SerialNumber'][:8] == serialToFind[:8]]
注意:一般情况下,而不是做
serials = linspace(0,len(data)-1,len(data), dtype='int')
for serial in serials:
就这样
for serial in range(len(data)):