Найти - Пользователи
Полная версия: Сделать из списка кортежей, двумерный список
Начало » Python для новичков » Сделать из списка кортежей, двумерный список
1
Rumato
Здравствуйте, помогите, пожалуйста, с такой задачей:
Есть список вида:

data = [(q,  2), (w, 3), (r, 5)]
Мне нужно среобразовать этот список кортежей в двумерный список, типа:

data = [[q,  2], [w, 3], [r, 5]]
Есть ли какая-нибудь функция, которая делает такое преобразование, или в этом случае только циклом можно получить нужный список?
PooH
map(list, [(q,  2), (w, 3), (r, 5)])
Rumato
Большое спасибо, я пока свой вариант написал:

y = [[x[0], x[1]] for x in data]
py.user.next
map() может вернуть итератор

Rumato
Большое спасибо, я пока свой вариант написал:
>>> q, w, r = 1, 2, 3
>>> data = [(q, 2), (w, 3), (r, 5)]
>>> data
[(1, 2), (2, 3), (3, 5)]
>>> data = [list(i) for i in data]
>>> data
[[1, 2], [2, 3], [3, 5]]
>>>
PooH
py.user.next
map() может вернуть итератор
Откуда дровишки? В доке http://docs.python.org/library/functions.html#map the result is always a list

ЗЫ: аааа, точно, в ветке 3.x, приношу свои извинения
Isem
py.user.next
map() может вернуть итератор
Всегда можно написать:
list( map(...) )
py.user.next
Isem
Всегда можно написать:
да, нужно
а то может быть обращение по индексу
baa
Rumato
Большое спасибо, я пока свой вариант написал:

y = [[x[0], x[1]] for x in data]
data = [list(i) for i in data]
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB