Алгоритмы на Python 3. Лекция №14

  Рет қаралды 86,819

Тимофей Хирьянов

Тимофей Хирьянов

Күн бұрын

Пікірлер: 74
@iritaka
@iritaka 4 жыл бұрын
Тайм-коды: Типы list, tuple, str. Срезы строк, списков. Структура данных Heap (Куча) 0:00 Тип list (список) # В = [True, 2.5, 3, []]. Список ссылок (может и на разнотипные данные). Изменяемость списка. Это изменяемый объект. В Питоне переменных нет, есть имена и есть объекты 2:33 Тип tuple (кортеж) # В = (True, 2.5, 3, []). Неизменяемый объект 5:30 все типы и функции - это классы/объекты в Питоне 6:00 если два имени указывают на два одинаковых неизменяемых объекта, то Питон может (для экономии памяти) сделать их одним объектом # x is y == True 6:23 Тип str (строка) # 'hello'/"hello". Неизменный тип 7:25 насколько кортеж неизменяем. Изменяемый тип list в неизменяемом tuple, как элемент 9:42 список кортежей 10:36 цикл for с двумя переменными # for x,y in A 12:40 A = x, y # тип А = tuple, т.е. == А = (х, у) 15:49 методы строки. find # находит в строке нужное. если нет, возвращает: -1 16:38 литералы строки. """ """ # многострочная строка 18:00 комментарий 20:52 разрешенные литералы чисел. Когда в числа можно вставлять значек подчеркивания 22:05 "\" # экранирование внутри строки 23:38 методы строки. count # возвращает количество вхождений искомой подстроки 25:55 методы строки. replace # возвращает копию строки с заменой 26:41 символы строки хранятся неравномерным кодированием UTF-8 31:07 Срезы строк. Срезы создают новый объект 31:50 тип символов с Питоне - str 34:22 s[start:stop:step] 40:03 Срезы списков 48:23 А[::-1] # от конца до начала 49:00 практика 51:14 присваивание в срез списка. Срезы списков создают новый объект списков не всегда, а только когда они находятся справа от оператора присваивания. Если слева - меняют сам объект 55:14 срезы с двумя параметрами никогда не приводят к ошибкам. Получится просто пустой список 1:01:21 стандартные функции списков чисел: len, sum, max, min 1:02:54 функция reduce # осуществляет редуцирование списка 1:03:53 Список строк. Методы: split # разделяет строку на список строк 1:06:58 upper # делает все заглавными, lower # все строчными, title # все первые буквы заглавными 1:08:57 s = '_'.join(A) # соединяет все элементы из А в строку через '_' 1:16:06 Структура данных Heap (Куча/Пирамида). Основана на эффективной нерекурентной сортировке. Наверх перемещаются самые большие 1:20:39 индексы специфически связаны друг с другом. parentID = (i - 1)//2 (кого спихивать надо). child1 = i*2+1, child2 = i*2+2
@nicholasspezza9449
@nicholasspezza9449 2 жыл бұрын
вот кому-то заняться нечем, лакейская сущность
@iritaka
@iritaka 2 жыл бұрын
@@nicholasspezza9449 один из моих любимых комментариев!
@tanyamakoeva
@tanyamakoeva 4 жыл бұрын
Тимофей Фёдорович, огромная благодарность Вам за этот труд! Вы чудесный преподаватель и хороший человек! 😊 Здоровья и счастья Вам и Вашей семье!
@viktorsidorkin1932
@viktorsidorkin1932 4 жыл бұрын
Тимофей Федорович! Спасибо Вам за такие чудесные лекции. Перехожу к весне. До встречи! Успехов и сил Вам!
@Cant_Hit_This7
@Cant_Hit_This7 5 жыл бұрын
I don't speak Russian but this dude seems like a great teacher!
@StRanGerManY
@StRanGerManY 4 жыл бұрын
You are right, he is
@mkhnuser
@mkhnuser 3 жыл бұрын
It is Russia. What did you think, hm?
@Andrei-eh8ww
@Andrei-eh8ww 3 жыл бұрын
Тоже повыпендриваюь, "мол знаю Английский". Hello from Russia 😘
@TheMasterNumberSeven
@TheMasterNumberSeven 3 жыл бұрын
Thank you, Sir
@PrO11213
@PrO11213 4 жыл бұрын
Поборол свою лень и досмотрел! Как же круто! Спасибо большое! Отправлюсь в следующий семестр, увидимся в комментах на 28 лекции ☺
@shes7akov
@shes7akov 6 жыл бұрын
1:21:12 (i-1)//2 (деление нацело)
@Bolivia_Gennadii
@Bolivia_Gennadii 4 жыл бұрын
да, я из-за этого в комменты залез, спасибо
@Vologdos
@Vologdos 6 жыл бұрын
12 лекцию не понял, зато 13 и 14 зашла на ура. Спасибо
@Bolivia_Gennadii
@Bolivia_Gennadii 4 жыл бұрын
12 жесть вообще, пришлось куча доп материала смотреть, и то еще не до конца все понял
@nonamenonametansh337
@nonamenonametansh337 4 жыл бұрын
30:46 Ой, простите пффф - нет не простите )) :D Очень люблю смотреть ваши лекции
@kaluginpeter
@kaluginpeter Жыл бұрын
39:34 небо в огне сгорает И в нём исчезают все надежды и мечты...
@psvvrn
@psvvrn 5 жыл бұрын
Белок в геноме никаким стандартным find не найдешь. Есть альтернативные кодоны (когда одна и та же аминокислота кодируется двумя или тремя разными триадами нуклеотидов), бывают управляющие кодоны, часть нуклеотидов может вырезаться из последовательности в процессе транскрипции и т.д. В общем, процесс поиска будет весьма нетривиальным.
@александргоков-у1ю
@александргоков-у1ю 4 жыл бұрын
1:16:16 мне больше нравится название «пирамида»....до и после этого момента всегда употребляет термин «куча»....улыбнуло. «А то «куча» как то звучит так...»
@SAS9MBA
@SAS9MBA 6 жыл бұрын
Каждый раз хотелось подпеть на словах: "От края до края"
@ReAgent003
@ReAgent003 3 жыл бұрын
небо в огне сгорает
@pyotrpig
@pyotrpig 3 жыл бұрын
и в нём исчезают
@Hyilia2005
@Hyilia2005 2 жыл бұрын
все надежды и мечты
@Dmitriitube
@Dmitriitube Жыл бұрын
Но ты засыпаешь
@Starworm82
@Starworm82 8 ай бұрын
и ангел к тебе слетает
@tooman
@tooman 5 жыл бұрын
6:20, чёрная бухгалтерия языка программирования python
@pavel6318
@pavel6318 5 жыл бұрын
На скорости 1.75 на ура заходит!
@logic0905
@logic0905 5 жыл бұрын
Я на 1.5 слушаю :)
@FIRchun2bal
@FIRchun2bal 4 жыл бұрын
а с 11:15 на скорости 0,5 очень забавно
@subergru
@subergru 4 жыл бұрын
На 2.5 огонь)
@ReAgent003
@ReAgent003 3 жыл бұрын
@@subergru не понимаю, как можно смотреть на скорости, меньшей чем 5x
@vesiolaiapuma570
@vesiolaiapuma570 6 жыл бұрын
24 мин. print(s.find('lo')) выводит на экран не 2, а 3. Понятно почему - s[0] = 'H', s[1] = 'e', s[2] = 'l', s[3] = 'l', s[4] = 'o', то есть подстрока 'lo' начинается с 3го символа.
@zlataafanaseva8595
@zlataafanaseva8595 4 жыл бұрын
уже дошла до 14!!!
@Dmitriitube
@Dmitriitube Жыл бұрын
Передышка от 11 и 12 лекции, затишье перед очередной бурей)
@JuliaNekrusheva
@JuliaNekrusheva 2 жыл бұрын
круто-прекруто!
@ἈλέξανδροςΓὁΜέγας-ε1β
@ἈλέξανδροςΓὁΜέγας-ε1β Жыл бұрын
как всегда все самое интересное в конце и за 4 минуты без реализации, было бы круче такие темы первее обясняться чем те что проще понять
@rustamguloff
@rustamguloff 4 жыл бұрын
У вас классные лекции. Спасибо! Только вот лекцию №15 не могу найти.
@rustamguloff
@rustamguloff 4 жыл бұрын
@@egoreach спасибо, теперь понятно, почему не смог найти ее в плейлисте.
@serhii_chechelnytskyi
@serhii_chechelnytskyi 3 жыл бұрын
А 15 лекция есть?
@mur10031986
@mur10031986 6 жыл бұрын
Тимофей Федорович, не увидел в плейлисте 15 и 20 лекцию. Они будут?
@unikol-u3r
@unikol-u3r 6 жыл бұрын
На сайте написано, что 15 лекция - осенний зачет
@ayrapetoff
@ayrapetoff 6 жыл бұрын
Лекция №19 (весной 5-я) kzbin.info/www/bejne/jqixl5t_bZlsbs0 Лекция №20 (весной 6-я) kzbin.info/www/bejne/Y6vFZmSpbs56sLc Вторая лекция названа на KZbin неверно - должно быть 20, написано 19.
@8888UNIVERSE8888
@8888UNIVERSE8888 6 жыл бұрын
"NEVER!" Рассмешило. Но да, в этом есть доля правды.
@АндрейПопов-ь9й9щ
@АндрейПопов-ь9й9щ 29 күн бұрын
Ссылка А[0} =False ушла в другой объект Fаlse созданный Питоном (интеллект) или программистом ?
@highlander3617
@highlander3617 3 жыл бұрын
Здравствуйте уважеймый Тимофей Хирьянов куда то пропала Алгоритмы на Python 3. Лекция №15,не уж то ли призрак?
@User050068
@User050068 3 жыл бұрын
В одной из предыдущих лекций он говорил что 15 лекция - консультация перед каким-то зачетом, а значит там ничего нового не должно быть.
@highlander3617
@highlander3617 3 жыл бұрын
@@User050068 понял принял
@xrollup
@xrollup 4 жыл бұрын
Я правильно понимаю что всего 14 лекций в курсе?
@witphg
@witphg 6 жыл бұрын
Подскажите где найти 15 лекцию? Или расскажите что там было.
@pnlabs
@pnlabs 6 жыл бұрын
Он ранее упоминал, что там просто консультация к контесту.
@himera2006
@himera2006 5 жыл бұрын
Я не совсем понимаю в польской нотации, когда мы достаем знак операции из подстроки(?), python его уже расшифровывает как операцию или нет?
@dmitrytsmyh5971
@dmitrytsmyh5971 5 жыл бұрын
Чтобы строку читать как код, нужно применить встроенную функцию eval()
@madmax6943
@madmax6943 10 ай бұрын
топ самых смешных срезов
@evgeniyvivcharyk8072
@evgeniyvivcharyk8072 3 жыл бұрын
В одній з перших лекцій фраза "що це було?" здивувала. Як давно переїхали до Федерації?
@reisedurchdiemathe
@reisedurchdiemathe 6 жыл бұрын
>>> z = [] >>> z.append(z) >>> print(z) [[...]] >>> z is z[0] True аксиома регулярности в Питоне не выполняется? ) можно создать циклическую ссылочную модель?
@ПетяТабуреткин-в7т
@ПетяТабуреткин-в7т 6 жыл бұрын
Да. И при глубоком копировании вложенность сохраняется: >>> import copy >>> x = copy.deepcopy(z) >>> x [[...]] >>>x[0] is x True
@nicholasspezza9449
@nicholasspezza9449 2 жыл бұрын
не тапл, а тюпл
@89bgg
@89bgg 6 жыл бұрын
s = 'AAAAAA' t = s.replce('AAA','BB') Traceback (most recent call last): File "", line 1, in AttributeError: 'str' object has no attribute 'replce' пробовал пример в этой консоли и пишет ошибку
@Abram4ik1
@Abram4ik1 6 жыл бұрын
у вас ошибка в слове "replace"
@PavelS-m5r
@PavelS-m5r 4 жыл бұрын
Может я чего не догоняю, но: A = 'AAA' B = A[:] print(B == A) print(B is A) #Выдало True A = 5 print(B is A) #А тут выдало False
@МихаилИванов-ъ8х
@МихаилИванов-ъ8х 4 жыл бұрын
То, что говорит Тимофей Фёдорович на 46:10, относится к изменяемым объектам. В вашем примере 'ААА' - это неизменяемый объект, поэтому python решил не создавать новый объект при создании B через срез строки A. Это потому что не возникнет ситуации, когда вы измените объект 'AAA' через А на 'aaa', потом обратитесь к В и обнаружите, что В указывает не на 'AAA', a на 'aaa'. 'ААА' изменить нельзя, поэтому зачем создавать ещё один НЕИЗМЕНЯЕМЫЙ объект, если можно заставить В просто ссылаться на А (так рассуждает python) . Вот почему первый вызов print(В is A) даст True. После А = 5 вы "отвязываете" А от 'ААА' и говорите ему ссылаться на другой объект 5, в итоге А и В ссылаются уже на разные объекты, поэтому второй вызов print(B is A) даст False. Если бы изначально A ссылался на ИЗМЕНЯЕМЫЙ объект, например A = [1, 2, 3], то для В, полученного через срез А[:], был бы создан новый объект [1, 2, 3] и в таком случае print(B is A) выдал бы False, поскольку В и А ссылались бы на разные, хоть и идентичные, объекты.
@PavelS-m5r
@PavelS-m5r 4 жыл бұрын
@@МихаилИванов-ъ8х спасибо. Кажется понял.
@Werumag
@Werumag 4 жыл бұрын
Про современный Delphi зря так, он по глубине от C++ ничем не отличается и очень далеко ушел от классического Паскаля
@Mr.SKIFLANDIAN
@Mr.SKIFLANDIAN 3 жыл бұрын
Как сказал один крутой разработчик, надеюсь С++ это не ваш первый язык)))
@Gartenzwerg
@Gartenzwerg Жыл бұрын
сумбурно излагает.
@RiO-Iceberg
@RiO-Iceberg 3 жыл бұрын
Нас 52 931, не знаю дойду ли я до конца...
@balabuyew
@balabuyew 6 жыл бұрын
Какой Utf-8? s = 'ыa' print(len(s)) print(ord(s[0])) print(ord(s[1])) По вашей логике получается что x = s[n] имеет асимптотику O(n), что конечно не так.
@olegivliev2765
@olegivliev2765 6 жыл бұрын
А в чем подвох? Пу сути строка - это такой аналог массива, неизменяемая последовательность односимвольных строк, в которых по сути записан код символа в кодировке utf8 для питона3. Чтение из массива -операция с асимптотикой в O(1), интерпретатор идет в блок памяти смотрит на какой код символа или на какой объект сслыка, по идее асимптотика в строке должна быть, как в массиве - 0(1), но это не точно.
@locktar-o-dark5664
@locktar-o-dark5664 6 жыл бұрын
23.50 вернет троечку, а не двоечку, препод немного спешит
@ДиванныйЭксперд
@ДиванныйЭксперд 6 жыл бұрын
ох и тема... три дня смотрел... бессмысленная и беспощадная...
@planet-earth-city
@planet-earth-city Жыл бұрын
@MrRom4ke - пишите ему что-угодно
@Palloncinovin
@Palloncinovin 2 жыл бұрын
26 минута ошибка лектора. на самом деле: >>> my = 'AAAAAA' >>> my.replace('AAA', 'BB') 'BBBB'
@TheFunnygrass
@TheFunnygrass Жыл бұрын
Тимофей Фёдорович, огромная благодарность Вам за этот труд! Вы чудесный преподаватель и хороший человек! 😊 Здоровья и счастья Вам и Вашей семье!
Алгоритмы на Python 3. Лекция №16 (весной 2-я)
1:19:16
Тимофей Хирьянов
Рет қаралды 77 М.
Алгоритмы на Python 3. Лекция №1
1:20:50
Тимофей Хирьянов
Рет қаралды 5 МЛН
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 108 МЛН
Quilt Challenge, No Skills, Just Luck#Funnyfamily #Partygames #Funny
00:32
Family Games Media
Рет қаралды 55 МЛН
Алгоритмы на Python 3. Лекция №4
1:14:14
Тимофей Хирьянов
Рет қаралды 573 М.
Алгоритмы на Python 3. Лекция №12
1:19:32
Тимофей Хирьянов
Рет қаралды 118 М.
NumPy - ГЕРОИ НЕ НОСЯТ ПЛАЩИ
13:11
мыш
Рет қаралды 8 М.
Управление Миром Лекции ФСБ ( Ефимов )
2:01:38
Valery Kudryavtsev (1337 Sp34kage)
Рет қаралды 10 МЛН
Информатика на Python, лекция 2, ФБВТ МФТИ (2023)
1:22:47
Тимофей Хирьянов
Рет қаралды 80 М.
Хэш-таблицы за 10 минут
13:01
Николай Тузов — Golang
Рет қаралды 136 М.
Алгоритмы на Python 3. Лекция №17 (весной 3-я)
1:20:32
Тимофей Хирьянов
Рет қаралды 62 М.
Нормализация в базе данных
15:14
Volodya Mozhenkov
Рет қаралды 101 М.
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 108 МЛН