Ваш вопрос был довольно коротким, поэтому я не совсем понял формат данных, но я попытался воспроизвести его с помощью:
foo = [[ 0.723, 1 ], [ 0.433, 2 ], [ 0.258, 1 ], [ 1.52, 2 ],
[ 0.083, 2 ], [ 2.025, 1 ], [ 3.928, 1 ]]
На случай, если вы захотите отфильтровать этот список foo
, чтобы он содержал только совпадающие числаДля определенного числа вы можете использовать следующее понимание списка:
foo_is_1 = [e for e in foo if e[1] == 1]
foo_is_2 = [e for e in foo if e[1] == 2]
print(foo_is_1)
print(foo_is_2)
В случае, если вы ничего не знаете о втором аргументе и просто хотите разделить ваш список на список списков с уникальными вторыми аргументами, которые вы можете использовать:
list_of_lists = [[e for e in foo if e[1] == a] for a in list(set([a[1] for a in foo]))]
for entry in list_of_lists:
print(entry)
Это в основном два списка, по одному для каждого уникального второго аргумента a
, и по одному для каждой записи e
в foo
.