Full transcript
Начало
0:00привет в ходе этого урока мы с вами
0:01познакомимся с кортежами
0:03вы языке питон а перед началом я бы
0:05хотел порекомендовать сайт и кипр точка
0:08ком на этом сайте вы найдете код
0:09домашнее задание и много другой полезной
0:11информации ссылка на этот урок на сайте
0:13будет в описании к этому видео
0:15кортежи в языке питон это по сути те же
0:17самые списке за исключением двух
Что такое кортеж?
0:19моментов если вы добавили в кортеж
0:21какие-либо элементы в дальнейшем эти
0:23элементы нельзя будет виды изменить то
0:26есть по сути кортеж это как некая
0:27константа куда вы добавляете некие
0:29значения и дальше эти значений уже там
0:31существует без каких-либо изменений
0:34также второе отличие она заключается в
0:36том что кортежи они весят меньше нежели
0:38те же самые списке и на самом-то деле
0:41там размер вот этих вот кортежей а также
0:44списков он ну не прям глобально
0:46отличается но в то же время вот когда мы
0:48будем допустим разрабатывать какие-либо
0:50веб-сайта на основе языка питон и когда
0:52нам нужно будет передать пользователю
0:54некую информацию то в таком случае
0:56намного будет логичнее все-таки
0:57использовать кортежи потому что они
0:59занимают меньше памяти и нам даже даже
1:02если мы хотя бы чуть-чуть сэкономим
1:04памяти нам это все равно будет в плюс
1:05потому что будь то программа какая-то на
1:09компьютер или будет веб-сайт экономия
1:11памяти это всегда
1:12вещь который находится в приоритете по
1:14этой причине кортежи они очень часто
1:16используются именно для передачи данных
1:18потому что во первых мы получаем то что
1:20пользователь не сможет никак вида
1:22изменить значение что находится в
1:24кортеже а во-вторых мы получаем то что
1:26мы как бы передам еще и меньший объем
1:29памяти тем самым оптимизируем программа
Создание кортежа
1:31ну и теперь давайте рассмотрим как же
1:33можно создавать сами по себе эти кортежи
1:35кортежи они по факту создаются точно так
1:37же само как и списки для создания списка
1:40мы использовали квадратные скобки а для
1:42создания кортежи мы используем круглые
1:44скобки но а дальше вся работа она
1:47происходит точно так же как и со
1:49списками
1:50но давайте мы сюда впишем какие-либо
1:52значения допустим на данный момент у
1:54меня здесь пускай будут только числа
1:55хотя конечно же сюда вы можете еще
1:57вписать и bull например можете вписывать
2:00числа с точкой а можете вписывать и в
2:02принципе некие строки все это будет
2:04здесь корректно обрабатывается ну
2:06давайте даже вот такой кортеж как раз
2:07вами и создадим
2:09далее если я попробую обратиться к
2:11какому-либо элементом обращение к
2:13элементам здесь здесь кстати идет точно
2:15такая же как и в списках то есть также
2:16используются квадратные скобки
2:18никаких круглых скобок и здесь не
Работа с элементами
2:20используется то есть например если я
2:23хочу вывести какой либо элемент ну
2:25предположим хочу вывести элемент
2:27шестерку на таком случае мне нужно
2:30обратиться к этому элемент по индексу я
2:32понимаю что этот элемент он находится на
2:34второй позиции а по индексу это будет
2:36единицы поэтому прописан здесь единицу и
2:38вот у меня вводится нужно для меня
2:39элемент также если возвращаться к
2:41прошлой теме к срезам то здесь вы
2:44спокойно можете еще указывать срез ну
2:46допустим я укажу здесь что начиная с
2:48первого индекса вплоть до пятого
2:49элемента мы с вами выведем все элементы
2:51воды и все элементы они здесь и были
2:53выведены на мэра с вами замечаем причем
2:56при выводе элементов можно заметить что
2:59используется именно круглые скобки не
3:01квадратные и круглые скобки используются
3:03ска скобки по то причине что это все
3:04таки у нас является кортеж и здесь же
3:07вот мы можем даже с вами попробовать
3:09изменить какой-то элемент
3:10давайте вот я попытаюсь обратиться к
3:11нулевому элементы попытались него
3:13установить что-то новенькое
3:14мы можем заметить что здесь это вся
3:16строка она у меня выделяется как бы
3:18говоря о том что что то я делаю не так
3:19но давайте я попробую даже такое
3:21запустить и вот мы замечаем что здесь
3:24нас выдается ошибка если перевести эту
3:26ошибку то она говорит о том что apple
3:29apple и так как раз карт с английского
3:31так вот здесь говорится о том что от
3:33apple он не имеет такого функционала как
3:36переприсваивание значения поэтому здесь
3:39присвоить новое значение я попросту не
3:41могу да давайте здесь даже напишу что
3:44now
3:44ну допустим такой комментарий создам вам
3:46на будущее кортежи обладают своим
Функции для кортежей
3:48набором функций вот только если
3:50сравнивать кортежи со списками то в
3:52списках там есть огромное множество
3:54различных фотодиод функций этой функции
3:57по удалению по добавлению по изменению и
3:59так дальше если говорить про кортежи то
4:02здесь конечно нельзя не удалять не
4:04добавлять не изменять поэтому здесь есть
4:06достаточно мало функции это например
4:09такие функции как каунт эта функция
4:11позволяет посчитать количество найденных
4:14элементов и вот например давайте я буду
4:16искать элементы у которых значение будет
4:19идти как 6
4:20в нашем случае должно быть выдано 2 что
4:23и произошло потому что видите у меня
4:24здесь два таких элемента если указать
4:26какое-то несуществующее значение то
4:28соответственно будет выдано 0 потому что
4:29таких элементов не было найда найдено
4:31так вот существует такая функция как
4:33аккаунт для работы с и кортежами
4:35а также помимо аккаунт здесь еще
4:37существует по сути лишь одна функция это
4:39лэнс эта функция она позволяет нам
4:41получить длину всего кортежа ну если мы
4:43такое с вами сейчас запустим вот мы
4:46замечаем что у нас водится 8 это как раз
4:48число всех тех элементов то есть это
4:50количество элементов которые есть нас
4:52кортежи
4:52ну и конечно же помимо вызова функций вы
4:56также всегда если вам нужно можете
4:57просто брать и выводить весь кортеж на
5:00экран для этого просто можете обратиться
5:02к нему по имени
5:03ну и вот весь кортеж здесь вводится
5:05опять же при выводе мы можем заметить
5:07что идут круглые скобки ну и если нужно
5:10вывести несколько элементов то не
5:11забывайте о том что существуют как
5:13просто обычные индексы так и существуют
5:15срезы где мы можем указать начало конец
5:17а также можем указать шаг то что мы вот
5:19здесь как раз уже с вами прописывали ну
5:21и по факту особо много здесь каких-то
5:23пункт cygnett то есть здесь все
5:24достаточно банально и просто
Способы создания кортежей
5:27дополнительно давайте рассмотрим каким
5:28образом можно создавать различные
5:30кортежи на самом-то деле кортеж можно
5:32создавать и без круглых скобок то есть я
5:34просто могу здесь начать прописывать
5:36какие-либо элементы через запятую причем
5:38опять же типы данных могут быть разные и
5:40если я попробую все это вывести на экран
5:43то мы с вами заметим что тип данных у
5:46этого всего массивчик а у этого всего
5:48списка будет именно как кортеж дата
5:50здесь используются круглые скобки это
5:52говорит нам о том что мы создали кортеж
5:54также если здесь прописать круглые
5:56скобки то ничего не поменяется точно
5:58также здесь у нас будет создан кортеж
6:00так как так же как и в предыдущем случае
6:02в то же время если я здесь пропишу
6:05круглые скобки но в круглых скобках у
6:07меня здесь будет лишь один определенный
6:09элемент
6:10то на самом-то деле это все не будет
6:12считаться как кортеж видите здесь
6:13круглые скобки не дабы не добавляются и
6:15это все водится как просто определенный
6:17один единственный элемент чтобы мне вот
6:20эту вот пятерка указать как кортеж
6:22то здесь не нужно еще поставить запятую
6:24я могу даже не указывать 2 какой-то
6:26элемент просто могу поставить запятую и
6:27тем самым я как бы говорил о том что это
6:29мне уже будет именно идти как кортеж
6:31видите это уже от
6:33жрецы с и с круглыми скобками и это
6:36говорит нам о том что мы уже создали
6:37кортеж а также если хотите вы в принципе
6:40здесь можете указать
6:41запятую ну например элемент и запятую
6:44опять же без круглых скобок и этот вы
6:46абсолютно точно то же самое будет тоже
6:48созданный кортеж об этом нам говорят вот
6:51эти вот круглые скобки то есть если даже
6:53прописать круглые скобки не прописать
6:55запятую это не будет считаться кортежем
6:57если прописать хотя бы один элемент и
6:58запятую то это будет считаться уже
7:00кортеж а теперь мы давайте наверное сюда
Перебор кортежа через цикл
7:02поместим те же элементы чтобы ли у нас в
7:04прошлый раз и попробуем весь этот кортеж
7:07перебрать через некий цикл здесь для
7:10перебора можно использовать цикл байл
7:12можно использовать цикл for что-то
7:14что-то будет работать абсолютно
7:15корректно но конечно же цикл for намного
7:18удобнее использовать для перебора текст
7:21и тех же самых списков кортежей словарей
7:23и прочих вещей которые мы будем чуть
7:25позже еще с вами изучать здесь я просто
7:27создаю ник некую перемену назову ее
7:29элемент и дальше указывает что перебираю
7:31такой кортеж когда-то далее для вывода
7:34каждого отдельного элемента мы
7:35используем print all men и в общем то
7:38больше ничего дописывать не нужно то
7:39есть вы можете заметить что вывод
7:41списков а также вывод кортежи он ничем
7:44не отличается что там что там можем
7:46использовать один и тот же самый цикл ну
7:48и вот у меня все элементы не
7:49действительно были выведены на экран все
7:51обработалось абсолютно корректно кроме
7:54того если вдруг у вас в программе есть
Преобразования списка в кортеж
7:56некий список
7:58ну предположим вот мы создадим здесь
7:59список нем будут определенные числа и
8:01дальше мне необходимо этот список
8:03преобразовать кортеж каким образом это
8:05можно сделать ну конечно же можно было
8:08бы здесь поменять квадратные скобки но
8:09предположим что ходе программы я такое
8:11сделать не могу и не нужно просто через
8:13какой-то метод
8:14переопределить этот список указав что
8:16это будет именно кортеж сделать такое
8:18максимально просто мы давайте создадим
8:20новую переменную допустим назовем ее как
8:22ньюгейт и чтобы нам этот список
8:24преобразовать в кортеж мне необходимо
8:26использовать ключевое слово
8:27apple ну или другими словами нужно
8:29использовать функцию apple опять же
8:32напомнит apple с английского это именно
8:33кортеж и сюда я просто передаю один
8:36параметр в моем случае это нам это вот
8:38этот вот список если такое сейчас
8:40запустить по ничего не заметим но если
8:42мы еще будем это конечно выводить на
8:44экран то в таком случае мы заметим что
8:46видите раньше у нас
8:47был список а теперь это именно кортеж
8:49потому что здесь нас круглый
8:50идут скобки ну и в аналогичном формате
8:53вы на самом-то деле можете еще
8:55преобразовать какую-либо строку в кортеж
8:58напомню что строка это у нас список что
9:01состоит из множества символов и
9:03соответственно такой список вы спокойно
9:05можете прям преобразовать в кортеж дабы
9:08нам такое сделать мы давайте вот здесь
9:10создадим некую новую строку предположим
9:12здесь будет написано хеллоу ворлд ну что
9:15то в этом духе и если я сейчас выведу
9:17эту строку
9:18по конечно же мы заметим что это будет
9:20просто обычная старкон но если я здесь
9:23обращусь к функции то пол и в нее
9:25передам когда эту строку в таком случае
9:27мы с вами заменим что видите это у нас
9:29получается огромный кортеж где у нас
9:31каждый элемент это определенный символ
9:33из самой этой строки это достаточно
9:36удобно таким образом мы получаем то что
Заключительная часть
9:39кортежа это по сути те же самые списке
9:41вот только кортежи нельзя обиды
9:43изменять а также кортежи весят меньше
9:46поэтому кортежи предпочтительно
9:47использовать для передачи данных
9:49пользователей например или для передачи
9:51данных на сервер или наоборот для
9:53получения данных из сервера в то же
9:55время просто невозможно работать ну
9:57невозможно видоизменять элементы внутри
9:59картриджа поэтому если вам в будущем в
10:01программе нужен какой-то список для
10:03хранения некой информации что
10:05впоследствии будет изменяться по конечно
10:07же стоит использовать именно списке но
10:09если у вас просто идет передача данных
10:11пользователей или например на сервере
10:13или сервера то конечно же всегда лучше
10:15использовать кортежа не занимают меньше
10:16это оптимизирует вашу программу
10:19ну что ж на этом у меня все надеюсь урок
10:20вам понравился если так то не забывайте
10:22подписываться на канал а так же вступать
10:24в наши соц сети все ссылки на них будут
10:26в описании к этому видео у меня ж на
10:28этом все до скорых встреч пока