Pull to refresh

Comments 22

Я генерирую один список вот так.
>>> name = ["Bob","Jon","Alice"]
>>> work = ["manager","driver","director"]
>>> dict(zip(name, work))
{'Bob': 'manager', 'Alice': 'director', 'Jon': 'driver'}
Совершенно верно! Прошу прощения за неточность.
UFO just landed and posted this here
Проверка, все ли элементы в списке уникальные

Тут упущен очень важный момент: этот код будет безусловно проходить по всему списку, даже если первые два элемента уже одинаковые.

Ещё довольно полезной может быть построчный вывод результата из списка.
Вместо цикла можно использовать одну строку print
>>> var = [1, 2, 3]
>>> print(*var, sep='\n')
1
2
3

Не пишите названия статей в повелительном наклонении, если пишите на Хабр.
Приятно читать такие комментарии? Такие заголовки тоже...

Согласен, не очень приятно, ведь во втором случае должно быть слово пишете.
Следствие написания комментария на телефоне, не более.
«Если», да ещё и с вариантами внутри сильно снижают градус повелевания от указания или призыва к совету или предложению. Всё нормально читается.
UFO just landed and posted this here

А это ведь работает. В закладки много добавило людей. Наверное даже не читая)

Для Python есть официальный Tutorial, на 99% покрывающий все потребности изучающих.
Все остальные руководства (что я встречал) для изучающих (включая эти две статьи) имеют как минимум два существенных недостатка:
1) они не покрывают даже того, что есть в официальном Tutorial;
2) они не обновляются.

UFO just landed and posted this here

В последнее время заметил, что люди с отрицательным рейтингом стали чаще писать статьи. Ну или переводы чужих статей.

Тут скорее причинно-следственная связь в другую сторону направлена: люди переводят чужие статьи (причём, как правило, фигово), за это им ставят минуса — рейтинг становится отрицательным.

Используйте zip для сравнения элементов в двух списках

В общем случае по этой схеме можно сравнивать любое количество списков, главное, чтобы они были одной длинны.
Если списки разной длинны то есть специальный zip из библиотеки:
zip_longest

Используйте lambda для сортировки вложенного массива по второму элементу
arr_list= [[2,4], [1,3], [5,7]]
arr_list.sort()

Если вы в исходном списке ключ сортировки стоит на первом месте в каждом элементе, то параметр key писать не надо, список будет отсортирован по объекту нулевом индексе каждого элемента.
[[1,3], [2,4], [5,7]]

Но в этом случае сортировка будет сравнивать списки дальше, если первые элементы равны, а это лишняя работа, которая не всегда нужна.

В общем да, будут сравниваться два списка и кортежа по всем правилам их сравнения.

collections.Counter

Хочется упоминуть еще очень удобный класс: collections.defaultdict
Отличный помощник в задачах с разряженными списками с элементами по умолчанию.

Sign up to leave a comment.

Articles