Python для начинающих. Урок 11: Генераторы списков (List comprehension).

  Рет қаралды 36,060

alishev

alishev

4 жыл бұрын

ВСЕ ВИДЕО ПО PYTHON: • Python для начинающих
МОЙ КУРС ПО GIT: www.udemy.com/course/git-alis...
Реклама и сотрудничество: alishev.neil@gmail.com

Пікірлер: 118
@alishevN
@alishevN 4 жыл бұрын
1) Плейлист этого курса вот здесь: kzfaq.info/sun/PLAma_mKffTOSY12JZS6l8lxKCpooPVcrn 2) Не обязательно использовать Jupyter Notebook. Можно использовать любую другую IDE, например PyCharm - www.jetbrains.com/ru-ru/pycharm/ Telegram: t.me/alishev_g Курс по GIT: www.udemy.com/course/git-alishev/?referralCode=71994763964B8E2E6A4E
@user-mp7wq3qz8f
@user-mp7wq3qz8f 4 жыл бұрын
После последних уроков, я думал, что совсем тупой, но вот он 11 урок и мысли "А может не все так плохо?") Спасибо, все доступно!
@Zelloss67
@Zelloss67 3 жыл бұрын
if true: return: print ('true story')
@lukandrate9866
@lukandrate9866 3 жыл бұрын
@@Zelloss67 while True: print("true story lol" end = ' ')
@user-ly3rd3yf5m
@user-ly3rd3yf5m 2 жыл бұрын
Дааа в точку)))
@alexvernua
@alexvernua 3 жыл бұрын
коммент для рейтинга этот урок полегче, чувство типа "передохнули? ну а теперь погнали, жесть начинается"))
@gaymonteg7011
@gaymonteg7011 3 жыл бұрын
Классный урок) Все задачи решил самостоятельно, но ты не упомянул во второй задаче, что остальные слова надо отсеять, поэтому я пытался придумать, как бы сделать, чтобы они из списка не удалялись) Так и не придумал, решил посмотреть. Спасибо что после двух сложнейших тем ты разобрал ту, которая вернула мне веру в то, что я не такой уж и тугой
@musiclifeoffical
@musiclifeoffical 3 жыл бұрын
Хороший урок, задачи правда легкие, и в первой проще просто шаг декриментации установить -2, и без условия
@user-cf7jg3sk3t
@user-cf7jg3sk3t 2 жыл бұрын
или умножать на 4 и range (5, 0, -1)
@user-xl1dn4oy4t
@user-xl1dn4oy4t Жыл бұрын
Он предоставил универсальное решение для любого списка, не все списки начинаются с четного числа
@iwansea6040
@iwansea6040 4 жыл бұрын
Класс! теперь ждем 12 Урок через пол года :DDDD
@alishevN
@alishevN 4 жыл бұрын
Надеюсь, что в этот раз будет быстрей :)
@eeLyuha
@eeLyuha 4 жыл бұрын
Начинает доходить! Спасибо!
@svhanz
@svhanz 4 жыл бұрын
Ну что сказать..Мало того, что вы сами толковый человек, так еще и преподаватель суперский!!! Видосов по питону как грязи, но вот чтобы разжевать и в рот положить!!! Огромное вам спасибо!
@redronny
@redronny 4 жыл бұрын
Отличные видеоуроки и хорошая поставленная речь! Смотрим с удовольствием всей семьей :))
@vitaliiananiev5038
@vitaliiananiev5038 3 жыл бұрын
Единственный урок который мне зашёл.
@svitlanaherashchenko5697
@svitlanaherashchenko5697 4 жыл бұрын
идеальный урок! Спасибо, учитель!)
@awgoodman
@awgoodman 4 жыл бұрын
Обалденно! Не забрасывай плейлист, пожалуйста :))))))))))))
@user-rp5io2xr1x
@user-rp5io2xr1x 4 жыл бұрын
огромная благодарность! интересные и понятные уроки!!
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Предельно ясно. Большое спасибо и лайк !
@heythere858
@heythere858 3 жыл бұрын
Огромное Спасибо за Уроки!!! Всегда мечтала выучить программирование и наконец-то благодаря вам начинаю понимать, что это не так уж страшно)
@phil2964
@phil2964 3 жыл бұрын
Полезная фича, спасибо за труд - без воды все по теме!!!
@user-yg7yv6qu2s
@user-yg7yv6qu2s 2 жыл бұрын
Спасибо. Очень понятно объясняете.
@Pashok2906
@Pashok2906 4 жыл бұрын
Все супер! Давай ещё!
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
На даный момент 0 дизлайков. Ты - супер ! Нет слов ! То чуство, когда нашел то, что искал, нет, даже больше ! Просто хотелось найти что - то понятное, а тут еще и разные способа в уроках. Уровень объяснения и преподавателя - MASTER !!!
@Altinbek95
@Altinbek95 4 жыл бұрын
Я знал эту тему, но будто узнал что-то новое - хорошо запомнил) Спасибо автору, очень здорово было бы учиться дальше у Вас!
@goodgriefwhatarelief8899
@goodgriefwhatarelief8899 2 жыл бұрын
Thank you so much, I've learned a lot from your lessons. Blessings to you!
@alisaholainen6334
@alisaholainen6334 4 жыл бұрын
Прикольная тема, спасибо!
@user-pv9zz9qy1n
@user-pv9zz9qy1n 3 жыл бұрын
эта тема самая лёгкая из всех других которые были изучены в течении 11 уроков
@user-oq9nf6tl3k
@user-oq9nf6tl3k Жыл бұрын
наконец-то самое легкие задания за 11 уроков 1 filtr = [num * 2 for num in range(10, 1, -1) if num % 2==0] print(filtr) 2 words_filtr = [word + '.' for word in words if len(word) > 5] print(words_filtr)
@user-oc9ey8yx3b
@user-oc9ey8yx3b 2 жыл бұрын
Уроки супер, всё доступно и понятно! Моё решение задачи 1 k=[num * -2 for num in range(-10,0,2)] print(k) Только после просмотра правильного ответа понял что этот способ уместен только для этой или подобных задач, где массив начинается с чётного числа
@osvab000
@osvab000 4 жыл бұрын
Суперполезные вещи!!!
@user-fu7be4xy8b
@user-fu7be4xy8b 3 жыл бұрын
Вы крутой чел! Благодарю вас🖖
@Cesar1k
@Cesar1k Жыл бұрын
Блин ну надо же сам решил задания, спасибо за уроки )
@quantum-dream
@quantum-dream 4 жыл бұрын
Лайк, а потом просмотр!
@yuriipylypiv2117
@yuriipylypiv2117 2 жыл бұрын
После нескольких дней ломания головы над словарями и многомерными массивами, генераторы списков и задачки довольно-таки легко дались)) Спасибо!
@vladimirkulakov6126
@vladimirkulakov6126 3 жыл бұрын
Супер! Спасибо! Очень увлекательно. 1ю задачу решил чуть короче: s = [i * 2 for i in range(10,1,-1) if not i %2]
@Arsbossone
@Arsbossone 3 жыл бұрын
d = [] for i in list(range(10,1,-2)): d.append(i * 2) print(d)
@hishikpubgchr9233
@hishikpubgchr9233 4 жыл бұрын
alishev вернулся Я рад что ты начел снимать видео Я программист Я смотрю твои видео по курсу Python
@ayazka5248
@ayazka5248 4 жыл бұрын
Вот что самоизоляция творит!))
@valijonli659
@valijonli659 4 жыл бұрын
Уважаемый Наиль, очень прощу вас, курсы по Андроида тоже продольжайте пожалуйста!
@Irades
@Irades Жыл бұрын
Спасибо)
@donfedor007
@donfedor007 3 жыл бұрын
Уроки хорошие! Спасибо тебе! Решение задачи №1 b = [i*2 for i in reversed(range(1,11)) if i%2==0] print(b)
@annaperyan8581
@annaperyan8581 3 жыл бұрын
Мой вариант решения Задачи 1: a = [num * 2 for num in range(10,1,-2)] print(a)
@serjk247
@serjk247 3 жыл бұрын
я кстати тоже так сообразил, когда первую подсказку увидел,не знаю зачем автор пошел по другому решению,однако я еще не досмотрел до конца видео. Автору большое спасибо за видео уроки,учусь на них
@user-ir2tw1zd2j
@user-ir2tw1zd2j 3 жыл бұрын
Ураааа! Я первый раз решил задачу точь-в-точь правильно😃😃😃😃
@yamataa
@yamataa 3 жыл бұрын
очень стыдно что забыл как добавлять к строчке элементы)) думал и не вспомнил но сразу понял на решении спасибо за курс очень информативно!)
@GANGST1ER
@GANGST1ER 4 жыл бұрын
# Задача 1 a = [i * 2 for i in range(10, 1, -1) if i % 2 == 0] print(a) # Задача 2 words = ["hello", "hey", "goodbye", "guitar", "piano"] words_filtered = [word + "." for word in words if len(word) > 5] print(words_filtered)
@talisman7776
@talisman7776 2 жыл бұрын
Задача1) h=[num*-2 for num in range(-10,-1,2) ] print(h) [20, 16, 12, 8, 4] Начал решать задачу не зная про третий аргумент - шаг, так как если не указывать шаг, диапазон от 10 до 1 выполняться не будет, то поставил знак -, потом перевернул знак возвращая числа в новый список. Узнал про третий аргумент, решил не менять код, а просто поставил шаг 2))). Задача2) rot=[slovo='.' for slovo in w if len(slovo)>5] print(rot)
@user-dc7zy9xc7c
@user-dc7zy9xc7c 2 жыл бұрын
эти генераторы они просто прекрасны. с ними программирование выглядит куда приятнее.😀
@user-ve6kt7uj5r
@user-ve6kt7uj5r 4 жыл бұрын
King is back
@user-lc4lx1gd3q
@user-lc4lx1gd3q Жыл бұрын
# task 1 print([index * 2 for index in range(10, 1, -1) if index % 2 == 0]) print([index * 2 for index in range(10, 1, -2)]) # task 2 print([letter + "." for letter in ["hello", "hey", "goodbye", "guitar", "piano"] if len(letter) > 5])
@vladimirkulakov6126
@vladimirkulakov6126 2 жыл бұрын
Решая задачи на codewars обратил внимание как много делается генераторами списка. В качестве основы можно использовать любой интерируемый объект, например строку, список, рейнж и др.
@nnnnn477
@nnnnn477 2 жыл бұрын
Но за урок спс
@user-qg5ve9cl3c
@user-qg5ve9cl3c 3 жыл бұрын
Более короткий вариант, за счет большего шага и без проверки на четность, хоть он и менее универсальный: [num * 2 for num in range(10, 1, -2)]
@gala_boro
@gala_boro 3 жыл бұрын
тоже так решила))
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Задача 2 была тяжелой, не потянул.... Как хорошо, что ты показуешь, как надо ! Но, хотелось бы задачек уровня ИЗИ... Допустим, один к одному или одна тяжелая, две легких. А так - все супер !
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Я про задачу с 10 урока :)
@donfedor007
@donfedor007 3 жыл бұрын
задача 2 b=['helloy', 'hey', 'goodbye', 'guitar', 'piano'] a=[i+'.' for i in b if len(i)>5] print (*a)
@user-bu3ir9hu7q
@user-bu3ir9hu7q Жыл бұрын
Проверяем вторую задачу. gen = [tmp + "." for tmp in word if len(tmp) < 4]
@user-bu3ir9hu7q
@user-bu3ir9hu7q Жыл бұрын
Я ещё не досмотрел решение первой задачи, но я её решил вот так вот: generator = [tmp * 2 for tmp in reversed(range(1, 11)) if tmp % 2 == 0]
@ghoulsss8463
@ghoulsss8463 2 жыл бұрын
nums = [num * 2 for num in range(10, 1, -1) if num % 2] print(nums)
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
1 задание (и первое самостоятельное) new_list = [el * 2 for el in list if el % 2 == 0] print(new_list)
@galua
@galua 4 жыл бұрын
Спасибо, папаша, за этот цветной видос 21 века
@deniskim402
@deniskim402 4 жыл бұрын
Задание 1: xxx = [num * 2 for num in range(10, 1, -2)] print(xxx) ---------------------------------------------------------------------- Задание 2: rrr = [word + '.' for word in words if len(word) > 5] print(rrr)
@ghoulsss8463
@ghoulsss8463 2 жыл бұрын
words = ["hello", "hey", "bigmoney", "fodifeerwe"] words_filtred = [word + "." for word in words if len(word) < 5] print(words_filtred)
@user-mb9nf1zj3l
@user-mb9nf1zj3l 2 жыл бұрын
Спасибо за Ваши видео, всё доступно.. Хотел спросить, а отмена последнего действия в Jupyter Notebook где то предусмотрена?
@suprun1982
@suprun1982 4 жыл бұрын
Мой вариант test4 = [num * 2 for num in range(10, 0, -1) if num % 2 == 0] print(test4)
@serjk247
@serjk247 3 жыл бұрын
а вот так не проще ? xxx = [num * 2 for num in (range(10, 1, -2))] print(xxx)
@AFK_DoSiK
@AFK_DoSiK 3 жыл бұрын
Ну нормас так, но если бы наш список начинался с нечетного числа, то не сработало бы
@AS-si3yv
@AS-si3yv 3 жыл бұрын
@@AFK_DoSiK почему? Вроде как декрементирует на 2 без проблем. Можно подгонять под любой удобный вариант.
@user-ob9eg5cl8i
@user-ob9eg5cl8i 4 жыл бұрын
long time no see
@suprun1982
@suprun1982 4 жыл бұрын
test5 = [w + "." for w in words if len(w) < 5] print(test5)
@failentisagood
@failentisagood 3 жыл бұрын
w = [i*2 for i in (range(10, 1, -2))] print(w) Так не правильно? [20, 16, 12, 8, 4]
@user-by5bs1bd9l
@user-by5bs1bd9l 4 жыл бұрын
уроки очень хорошие . Жду урок 12 . Можно получить сообщение об уроке
@LOVE-kx2ks
@LOVE-kx2ks 2 жыл бұрын
вот так еще короче если сделать шаг "-2" my_gen =[num * 2 for num in range(10, 1, -2)]
@user-cm5mk7er6k
@user-cm5mk7er6k 3 ай бұрын
можно ли с помощью данного генератора списка решить вторую задачу, но чтобы все слова из исходного в новый попадали и добавлялась точка только в слова выполняющие условия?
@relaxchanelmix
@relaxchanelmix 3 жыл бұрын
a_filtered=[num for num in a if num
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Dear Alishev. If you know - answer me, please. Как можно применить Пайтон в машиностроении ? Просто я мечтаю создать свою марку автомобилей :) # без переводчика и словаря. А ты родился в Казани ? Я в Киеве. Живу в Житомире.
@adhamkenjabaev2588
@adhamkenjabaev2588 2 жыл бұрын
Я пока здесь)
@ilnurryazhapov9377
@ilnurryazhapov9377 4 жыл бұрын
Сразу видно кто на карантине))
@alishevN
@alishevN 4 жыл бұрын
Да, сижу дома)
@Kakish_
@Kakish_ 3 ай бұрын
list1 = [num * 2 for num in e if num % 2 == 0]
@LukyTexan
@LukyTexan 3 жыл бұрын
не понял, а почему нельзя тупо вывести список с шагом -4? print(list(range(20, 1, -4))) ответ же одинаковый получается [20, 16, 12, 8, 4]
@user-nm5ld9vr3k
@user-nm5ld9vr3k 2 жыл бұрын
зачем усложнять range, добавлять шаг, если есть доступная и понятная команда reversed. Оооочень часто решение его задач можно упростить zadacha1=[i*2 for i in reversed(range(2,11)) if i%2==0] print(zadacha1)
@khachaturtamaryan3527
@khachaturtamaryan3527 4 жыл бұрын
Добрый день У меня такой вопрос У вас ещё будет видно и сколько будет? Ещё хочу спросить Какой уровень знаний будет после этого курса?
@redsparrow9050
@redsparrow9050 4 жыл бұрын
Считаю, что после этого курса можно спокойно в резюме е писать, что Вы middle, но ближе к senior
@user-ej8vz5gs5m
@user-ej8vz5gs5m 4 жыл бұрын
Подскажите, что значит эта ошибка? Всё также как в уроке напечатано. TypeError Traceback (most recent call last) in 1 range_elements = [] 2 ----> 3 for num in range(1, 6): 4 range_elements.append( num * 3) 5 TypeError: 'list' object is not callable
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
тоже самое
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
вы сделали где-то список list. удалите его с помощью del list
@nnnnn477
@nnnnn477 2 жыл бұрын
c = [e * 2 for e in range(10, 1, -2)] А не легче вот так сделать?
@near5090
@near5090 4 жыл бұрын
куда пойти дальше досмотрев эти уроки?
@klever2183
@klever2183 4 жыл бұрын
Подскажите пожалуйста материалы для изучения питона, я абсолютный новичок и поэтому не очень понимаю откуда нужно брать информацию(за исключением этих видео)
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Посмотри лекции Тимофея Хирьянова: Практика программирования на Питон 3. А еще есть менее полезное видео от ХаудиХо: Пайтон за час. Зато кратко и для новичка - в самый раз !
@klever2183
@klever2183 4 жыл бұрын
Анжелика Богдан благодарю
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
​@@klever2183, Пожалуйста ! Просто это писал 7 - классник Вадим, то - есть я. У меня нет телефона, вот и сижу в компе тут... обучаюсь. Но все равно, спасибо за благодарность, ​ KleveR !!!
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
:)
@user-sy2gx5zg8b
@user-sy2gx5zg8b 4 жыл бұрын
Если нужно будет еще, то у Хауди Хо есть много видео по Питону, а на канале Тимофея Хирьянова лекции под названием: "Алгоритмы на Python 3 ". Был рад помочь !
@user-ro6rp3sv8s
@user-ro6rp3sv8s 2 жыл бұрын
вы можете мне помочь порешать задачу по python пожалуйста. задача такова: Из файла 1 прочесть список студентов найти каждого средний балл и записать в 2 файл
@Shkalalad
@Shkalalad Жыл бұрын
Отфильтруйте список из строк, которые содержат "р". Код words = ["ракушка", "кукушка", "рыбка"] words_with_r = ... # Не удаляйте этот код, он нужен для проверки [print(w) for w in words_with_r] 1 words = ["ракушка", "кукушка", "рыбка"] 2 words_with_r = ... 3 ​ 4 # Не удаляйте этот код, он нужен для проверки 5 ​ 6 [print(w) for w in words_with_r] как это сделать ?
@donfedor007
@donfedor007 3 жыл бұрын
про то что можно без reversed не знал.
@user-rq2ig1it8k
@user-rq2ig1it8k 3 жыл бұрын
а так низя? [num for num in range(20,0,-4)]
@hamidullaibragimxojayev2853
@hamidullaibragimxojayev2853 2 жыл бұрын
где ответ задачи
@damirkayumov6574
@damirkayumov6574 Жыл бұрын
А почему в примере с генератором 6 минута для якобы короткой записи имя переменной короткое, а для контр примера взяли длинное, видимо подсознательно, чтобы убедительнее было!
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
почему-то list не работает - TypeError: 'list' object is not callable
@christineborovkova4679
@christineborovkova4679 4 жыл бұрын
потому что я завела на имя list лист. чтобы это убрать, сделайте del list
@sairus1743
@sairus1743 4 жыл бұрын
а что дальше?
@alishevN
@alishevN 4 жыл бұрын
будут следующие уроки
@sairus1743
@sairus1743 4 жыл бұрын
@@alishevN ну это я понял. А как мне применить эти знания?
@klappyVR
@klappyVR 2 жыл бұрын
кто из 2021 ?
@loren1
@loren1 4 жыл бұрын
Вот вроде тут домашки получается решать, а на степике такие задачки конченные, сначала код пишешь, а потом с прогой проверки разбираешься 2 часа
@onegamer6429
@onegamer6429 3 жыл бұрын
Почему такому замечательному видео так мало лайков ставят?! Я жалобу подам!
@user-of6oz4yl8f
@user-of6oz4yl8f 4 жыл бұрын
Всё ? Иные питонщики уже не делятся своими решениями в комментах ))
@alishevN
@alishevN 4 жыл бұрын
А решение же есть в видео)
@lemonochelo7404
@lemonochelo7404 3 жыл бұрын
моё решение mylist = [] a = sorted([num * 2 for num in range(2,11) if num % 2 == 0], reverse=True) print(a)
터키아이스크림🇹🇷🍦Turkish ice cream #funny #shorts
00:26
Byungari 병아리언니
Рет қаралды 28 МЛН
List Comprehension in Python
2:01
b001
Рет қаралды 52 М.
Как устроены итераторы в Python?
11:13
Хитрый питон
Рет қаралды 14 М.
НЕЙРОСЕТЬ своими руками за 10 минут на Python
11:10
Хауди Хо™ - Просто о мире IT!
Рет қаралды 1 МЛН