Основы Python #9: списки

  Рет қаралды 26,038

Oleg Molchanov

Oleg Molchanov

Күн бұрын

Пікірлер
@Bald_Panther
@Bald_Panther 5 жыл бұрын
Отличная подача материала. Остановлюсь на вашем курсе, т.к. вы объясняете подробно и доступно для понимания. Спасибо за труды. Желаю успехов.
@rainhard86
@rainhard86 4 жыл бұрын
Отличный материал для новичков. Считаю одним из лучших в рускоязычном ютубе. Просматриваю по несколько раз. Чувствуется огромный опыт программирования автора за плечами.
@notbad4167
@notbad4167 2 жыл бұрын
Согласен :)
@AlexAlex-cm7ne
@AlexAlex-cm7ne 4 жыл бұрын
Недавно начал изучать Python. Просмотрел немалое количество видеоуроков на других каналах и понял на сколько прав был Сократ. Я знаю, что ничего не знаю! Спасибо за доходчивые и понятные уроки!
@ТайлерДерден-ю2у
@ТайлерДерден-ю2у 4 жыл бұрын
Учу питон самостоятельно уже полгода, и только сейчас я понял как пользоваться сортировкой по ключу. Спасибо, Олег.
@rushmaster_
@rushmaster_ 11 ай бұрын
Спасибо
@vladimirkulakov6126
@vladimirkulakov6126 3 жыл бұрын
Очень нравится что мы переходить к задачам из реальной жизни и примеры. Спасибо
@voki9691
@voki9691 4 жыл бұрын
Очень хороший урок, хоть и длинноват. Узнал много нового про списки и строки
@ИльнарШафигуллин-и6и
@ИльнарШафигуллин-и6и 4 жыл бұрын
На 7:33 неточность. Если нужно до конца списка пробежать, то срез должен быть l[::2], такой как на видео откинет последний элемент для нечётного количества элементов списка.
@DadundddaD
@DadundddaD 3 жыл бұрын
рили?
@pechatlekal
@pechatlekal Жыл бұрын
Олег, приветствую👋 попробовал поставить для сортировки не год, как в примере, а случайные числа "_5", *_55, "_2010" и тд. В результате сортировки получается, что сортировка все-таки не по числам, а по первому символу... Так как 5-ки у меня в конце списка, хотя 5 и 55 меньше 2010🤔🤝
@clinteastwood3864
@clinteastwood3864 5 жыл бұрын
Автору спасибо! Очень хорошо объясняете!
@daniilbelyaev2778
@daniilbelyaev2778 4 жыл бұрын
Хотел уточнить один момент, если я все верно понимаю, сортировка проводится по каждому отдельному символу (н-р: сортировка f_19 d_120 и a_112 по возрастанию вопреки ожиданиям на выходе выдаст следующий порядок a_112, d_120 и f_19)? Вопрос в том, как это пофиксить?) спустя время дошло : list_1 = ['a_10', 'b_14', 'c_80', 'd_120', 'e_53', 'f_96', ' g_127', 'h_78'] def by_number(name): return int(name.split('_')[-1]) sbn_list1 = sorted(list_1, key=by_number) print(sbn_list1) В результате вроде как корректно сортирует
@leomysky
@leomysky 4 жыл бұрын
Странно, что есть дизлайки, конечно На всех уроках Очень необычные люди их ставят А я, вот, лайк поставил)
@egorguru5224
@egorguru5224 4 жыл бұрын
Лучший!
@zajva1
@zajva1 4 жыл бұрын
Не работает dir(s), ни чего не выводит на экран, только позже я сделал так print(dir(s)) и все появилось. Олег спасибо самое лучшее видео про питон у вас. Подписка и лайк.
@SergeyMenshov
@SergeyMenshov 4 жыл бұрын
Олег, огромное вам спасибо! Разложили многое по полочкам в моей голове. Я уже давно пытаюсь как следует погрузиться в мир Python, да все как-то не получалось (хотя уже и один проект успел сделать на Django REST, вот такой вот порадокс), а с вашими курсами продвижение пошло намного быстрее, уже начал и вспомогательные небольшие скриптики писать на нем. Можно сказать наконец-то удалось проникнуться этим языком программирования. :)
@vivacuba1990
@vivacuba1990 3 жыл бұрын
спасибо тебе!!!
@aidartimerbayev9600
@aidartimerbayev9600 5 жыл бұрын
Доброе время суток. Интересная и полезная информация о функции sorted по кеу. Было бы интересной информация о вложенных и многоуровневых списках.
@zaemiel
@zaemiel 5 жыл бұрын
Добрый день. На самом деле все тоже самое. Просто нужно остановится на 3 минуты и подумать, как это делается и прокручивается в циклах. Поскольку все тоже самое, то ответы на ваши вопросы лежат на поверхности.
@Mahitkompot
@Mahitkompot 2 жыл бұрын
Что-то я не догоняю.. 22:25 что пишу -1(вычитание от длины), что 1, результат одинаковый... ведь 1 это второй элемент будет ,так же цифра 2000 . .. тогда зачем лишний символ "-" писать с конца... и 24:00 name и name.split в коде функции мы же name не вводим как функция его возвращает(return)?...
@DadundddaD
@DadundddaD 3 жыл бұрын
13:09 объясните, пожалуйста, почему мы метод применили только к списку new, а изменили и new, и l?
@eugene_na_tytrube
@eugene_na_tytrube 3 жыл бұрын
Списки, в отличие от тех же строк, изменяемые объекты, т.е. в список можно добавлять и удалять элементы, не создавая при этом новый список, а изменяя сам имеющийся список. Переменные l и new - обе ссылаются на одни и тот же объект. Как два ярлыка наклееных на одну коробку. Метод изменяет сам объект. Пусть список будет коробкой в которой лежат элементы списка. На коробке есть две этикетки - переменные l и new. Вы кладете в коробку новый предмет - метод .append(). В коробке теперь на одни элемент больше. Но обе этикетки как висели на ней, так и продолжают висеть - т.е. обе переменные как ссылались на один и тот же список, так и продолжают на него ссылаться, а элементов теперь в списке больше. Вот и получается, что теперь обе переменные возвращают увеличеный список. Поэтому в уроке и заострили внимание на том, что списки изменяемые, и что об этом нужно помнить, т.к., в зависимости от того результата, который нужен, придется выбирать между использванием какого-либо метода, изменяющего сам объект, или использованием функции, которая создаст и вернет новый объект. Как например выбор между методом .sort() и функцией sorted().
@psybb4303
@psybb4303 5 жыл бұрын
Спасибо за уроки, с удовольствием смотрю) А как sorted понимает, что после сравнения по ключу из функции (by_year), где на выходе получаются только цифры, нужно обратно все склеить, а не выдать ['2000', '2010', '2011'] ? Единственное, что пришло в голову: функция для него как какой-то прибор (отдает по одному элементы из списка не заморачиваясь, на выходе получает значение - число, и расставляет элементы по возрастанию в соответствии с полученным значением.
@zaemiel
@zaemiel 5 жыл бұрын
исходные строки не меняются. Строки вообще не меняются. Каждый раз, когда делается split строки, создается объект списка, от которого берется один элемент. На исходную строку - это совершенно не влияет.
@hanckhanck8376
@hanckhanck8376 5 жыл бұрын
Олег, не подскажете куда копать, если нужно в двух огромных списках, назовем их А и В (оба содержат полные пути до файлов) найти дубликаты файлов (по имени, без учета пути) и удалить их из списка А. Что я делаю: split('/')[-1] и сравниваю каждый элемент, но чтобы обойти такие списки нужно очень много времени. Еще пробовал вычитать список из списка, но не понимаю как потом вернуть путь. Заранее спасибо
@zaemiel
@zaemiel 5 жыл бұрын
Если вы сперва ищите все файлы и берете их пути, то ускорить это вряд ли получится. Потому что здесь самое слабое звено - это чтение с диска.
@hanckhanck5376
@hanckhanck5376 5 жыл бұрын
@@zaemiel нет списки уже готовы. Нужно только сравнить все элементы списков по последнему split('/')[-1]. Давайте я попробую объяснить: А=['c:/program/1.exe'] В=['d:/videos/1.exe', 'c:/pictures/222.exe'] мне нужно, сравнить эти списки, и удалить из списка В элемент 'd:/videos/1.exe' , так как файл 1.exe есть в списке А.
@zaemiel
@zaemiel 5 жыл бұрын
ну, ок... а как вы это решили для себя, что оно медленно работает?
@артурмагомедов-б9т
@артурмагомедов-б9т 5 жыл бұрын
@@zaemiel Извините, что с разных акков. Ну программы всякие поисковые они ж побыстрее находят. Мое решение тупо перебор и сравнение for i in A: for z in B:
@hanckhanck8376
@hanckhanck8376 5 жыл бұрын
@@zaemiel блин, for i in A: if i.split('/')[-1] in B: print(i) а я зачем-то 2 раза 'for' делал для обоих списков и для А и для В. Извините, тупанул
@archiechellaut9483
@archiechellaut9483 2 жыл бұрын
Олег, Вам не говорили, что Ваш голос, как у Адвоката Егорова? :)
@vladimirmedvedev8908
@vladimirmedvedev8908 3 жыл бұрын
Не сказал про метод .copy И числа из сплит возвращаются или строковые значения?
@ДанилВахрушев-т4э
@ДанилВахрушев-т4э 4 жыл бұрын
Хоть и знаю python, но все равно узнаю новые детали
@ДенисЛатыпов-ъ3и
@ДенисЛатыпов-ъ3и 5 жыл бұрын
Не понял , почему функция вызывается если мы не передали параметру функции ,,name'' , никакого аргумента . Таймлайн 24:19
@pompomag
@pompomag 4 жыл бұрын
в name передается список children, делает это sorted в 8 строчке
@alexanderpadalka5708
@alexanderpadalka5708 3 жыл бұрын
🗽
@СлаваКнязев-з2ч
@СлаваКнязев-з2ч 3 жыл бұрын
что-то мне не понятно может потому-что я 4день учу python ?????
@orngelimon3181
@orngelimon3181 3 жыл бұрын
rl[0] что сделало
@AlexApanasik
@AlexApanasik 4 жыл бұрын
Олег у меня тот же вопрос, что и у Денис Латыпов. Не совсем понятно как работает конструкция sorted(children, key=by_year) . Как в функцию by_year передается нужное имя? Спасибо
@arsennedashkivskyi2364
@arsennedashkivskyi2364 4 жыл бұрын
Мне кажется потому что функция by_year возвращает только года, следовательно когда ставишь ключ по функции то оно сортирует по тому что возвращает эта функция
@palpal2493
@palpal2493 5 жыл бұрын
По 9 яиц в коробке )))))))))))))))
@zaemiel
@zaemiel 5 жыл бұрын
Вы что не слышали про "девятки яиц"?
@victortemnov
@victortemnov 4 жыл бұрын
Лучший
@MrPain-wu4cx
@MrPain-wu4cx 4 жыл бұрын
У меня одного заместь урока какой-то дядя 1 минуту про игру говорит
Основы Python #13: Работа с файлами, with
16:42
Oleg Molchanov
Рет қаралды 39 М.
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН
Quando A Diferença De Altura É Muito Grande 😲😂
00:12
Mari Maria
Рет қаралды 45 МЛН
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН
КАК УСТРОЕН TCP/IP?
31:32
Alek OS
Рет қаралды 258 М.
Основы Python #16: импорт модулей
17:09
Oleg Molchanov
Рет қаралды 47 М.
Python - полный курс для начинающих. Этот навык изменит твою жизнь.
5:27:42
Основы Python #15: Исключения
16:16
Oleg Molchanov
Рет қаралды 29 М.
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН