des1roer
@des1roer
ученье - свет, а неученье - приятный полумрак

Python многомерные массивы?

Хочу написать небольшой скрипт на python. Язык знаю посредственно а сделать охота быстро.
Как создать многомерный массив с ключами. что-то вроде такого
А = [ 0 : [ [1,3] ,[2,4] ],
3 : [ [4,3] ,[5,4] ],
75 : [ [10,3] ,[20,4] ] ]

Для понятности - нужно в цикле забивать кортежи (кортежи ли? я не дока) в цикле по принципу имеем 3 строки из базы - ид, значение, время и должны получить удобоваримый массив чтобы можно было записать отдельно массивы с разными ид то есть

massiv = {
id_1 : [ [val_11, time_11], [val_21, time_21] ],
id_2 : [ [val_12, time_12], [val_22, time_22] ],
id_3 : [ [val_13, time_13], [val_23, time_23] ]
}
что то вроде

for i in len(id):

massiv(id[i] : { [val[i], time[i] }
  • Вопрос задан
  • 3899 просмотров
Решения вопроса 2
winordie
@winordie
Лучшая документация -- исходники
Если одному id может соответствовать несколько пар значений [val, time], то можно как то так:
a = dict()
for .... [ тут получаем очередные значения id, val, time ]:
    try:
        a[id].append((val, time))
    except KeyError:
        a[id] = [(val, time)]
Ответ написан
@SaulTigh
Python Developer
Хорошим тоном в таком случае использовать defaultdict.

Из документации:
from collections import defaultdict

s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
d = defaultdict(list)
for k, v in s:
    d[k].append(v)

print d.items()
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Arseny_Info
@Arseny_Info
R&D engineer
Можно использовать pandas, хотя для ваших задач, возможно, это оверхед.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
04 мая 2024, в 08:59
40000 руб./за проект
04 мая 2024, в 07:58
1000 руб./в час