Python 3.x 如何从每个输出行分离数据

Python 3.x 如何从每个输出行分离数据,python-3.x,list,beautifulsoup,Python 3.x,List,Beautifulsoup,我从代码中得到了这些数据 list = [sno,state_name,active,positive,cured,death,new_active,new_positive,new_cured,new_death] lol= [list] def Extract(lol): return [item[0] for item in lol] print(Extract(lol)) 我想在这里为每个类别创建一个列表。一个类别表示数字,一个类别表示名称,一个类别表示第三组值,依此类推

我从代码中得到了这些数据

list = [sno,state_name,active,positive,cured,death,new_active,new_positive,new_cured,new_death]
lol= [list]

def Extract(lol): 
    return [item[0] for item in lol] 
print(Extract(lol))
我想在这里为每个类别创建一个列表。一个类别表示数字,一个类别表示名称,一个类别表示第三组值,依此类推。我似乎不明白

[2, 'Andam', 635, 2985, 2309, 41, 602, 3018, 2374, 42]
[1, 'Andhr', 92208, 382469, 286720, 3541, 94209, 393090, 295248, 3633]
[3, 'Arunach', 987, 3555, 2563, 5, 1007, 3633, 2621, 5]
[4, 'Assama', 19535, 96771, 76962, 274, 19222, 98807, 79307, 278]
[5, 'Bira', 19823, 126714, 106361, 530, 19067, 128780, 109175, 538]
[6, 'Chandiga', 1539, 3376, 1796, 41, 1544, 3564, 1977, 43]
[7, 'Chargh', 10174, 24550, 14145, 231, 11136, 25988, 14607, 245]

一种方法是使用enumerate()遍历列表:

编辑

如果这是一个嵌套列表,您可以将每个元素更改为
str
,然后按索引获取第一个元素:

lst = [[2, 'Andam', 635, 2985, 2309, 41, 602, 3018, 2374, 42],
[2, 'Andam', 635, 2985, 2309, 41, 602, 3018, 2374, 42],
[1, 'Andhr', 92208, 382469, 286720, 3541, 94209, 393090, 295248, 3633],
[3, 'Arunach', 987, 3555, 2563, 5, 1007, 3633, 2621, 5],
[4, 'Assama', 19535, 96771, 76962, 274, 19222, 98807, 79307, 278],
[5, 'Bira', 19823, 126714, 106361, 530, 19067, 128780, 109175, 538],
[6, 'Chandiga', 1539, 3376, 1796, 41, 1544, 3564, 1977, 43],
[7, 'Chargh', 10174, 24550, 14145, 231, 11136, 25988, 14607, 245]]

# convert it to list of str
lst_new =[[str(x) for x in lst] for lst in lst]

numbers = [x[0] for x in lst_new]
state_names = [x[1] for x in lst_new]
# print(numbers)
print([int(x) for x in numbers])  # if you want it back in `int`
print(state_names)
输出:

[2, 2, 1, 3, 4, 5, 6, 7]
['Andam', 'Andam', 'Andhr', 'Arunach', 'Assama', 'Bira', 'Chandiga', 'Chargh']

你试过什么?我用我的方法编辑过。-谢谢您的回复,但是我无法获取状态列表的第二个元素,当我为第一个状态名称[0]输入信息时,所有名称同时出现。我得到的是一个垂直列表,与您的水平列表不同。您生成的输出是我想要的,但我无法获得。@mronevsall请共享您的垂直列表示例。
[2, 2, 1, 3, 4, 5, 6, 7]
['Andam', 'Andam', 'Andhr', 'Arunach', 'Assama', 'Bira', 'Chandiga', 'Chargh']