170 похожих чатов

Здравствуйте. Как лучше проверять и вытаскивать данные с многомерных

массивов? То есть, если данные на глубине 3х шагов например?
Сейчас сделал так:
for res in resources:
d = {}
try: d.update({'cn': (res[1]['cn'][0]).decode('utf-8') })
except: pass
try: d.update({'displayName': (res[1]['displayName'][0]).decode('utf-8') })
except: pass
try: d.update({'description': (res[1]['description'][0]).decode('utf-8') })
except: pass
data.append(d)
но кажется не очень тру

11 ответов

37 просмотров

dpath посмотри.

E-T Автор вопроса
Maxim Kolesnikov
dpath посмотри.

хмм. целую либо тащить ради такого. А мой вариант он как вообще?

E-T Автор вопроса
Vladyslav Savchenko
Я обычно делаю DefaultDict

опять я неправильно задал вопрос. Проблема не в формировании дикта, а вытаскивание с результата (лдапа) - то есть такого поля вообще не может быть в теории.

E T
опять я неправильно задал вопрос. Проблема не в фо...

In [71]: def _default_dict(): return collections.defaultdict(_default_dict) In [72]: config = _default_dict() In [73]: config['a']['b']['c'] Out[73]: defaultdict(<function __main__._default_dict()>, {}) In [74]: config['a']['b']['c'] or 'default' Out[74]: 'default'

E T
хмм. целую либо тащить ради такого. А мой вариант ...

Хз. Там что-то странное. Тебя просто try не устроит?

E-T Автор вопроса
E-T Автор вопроса

вот как тут, но вдруг есть что-то красивое =)

Вместо res[1] распакуй свой кортеж. Рекомендация. Дальше, если это словарь, то можешь методом get организовать безопасное чтение.

E T
вот как тут, но вдруг есть что-то красивое =)

Для словарей есть красивый метод get. Но ты говорил про массивы.

Три цикла for 👌

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта