Python академия. Учи Python быстро и легко. По всем вопросам @evgenycarter
Обработка строки
Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использованием метода вместо перебора списком.
Перечислим наиболее полезные методы:
capitalize() - первая буква большая, остальные маленькие
strip() - удаление пробелов в начале и конце
center(int, chr='') - отцентрирует текст, int - нужное кол-во символов в строке, а chr - символ для добавления в начало и конец
swapcase() - заглавные буквы в прописные, маленькие в большие
lower() - преобразует к нижнему регистру
upper() - преобразует к верхнему регистру
При написании нейронок и ботов обязательно приводите все к нижнему регистру с помощью lower(). При написании ботов часто использую center(), для красивого вывода.
Подписывайтесь на канал 👉@pythonofff
Курс «Разработчик 1С» от Яндекса.
За 6 месяцев освоите один из самых простых языков программирования и пройдёте стажировку
Зарегистрироваться
#реклама 16+
practicum.yandex.ru
О рекламодателе
Множества set
Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти количество одинаковых слов, то множества с легкостью вам помогут.
Похожи на списки, но на неупорядоченные. Они больше весят, но намного быстрее. В небольших проектах оправдано такое использование: множество id админов/пользователей (в зависимости от размера ОЗУ), когда требуется только проверить есть ли id в списке. Через стандартный список это займет O(n) или если он отсортирован O(log n) , в то время как у множеств это всегда O(1).
Зная преимущества вы всегда можете выбрать наиболее предпочтительный вариант в той или иной ситуации.
Подписывайтесь на канал 👉@pythonofff
Модуль sys
Данный модуль предоставляет доступ к широким возможностям интерпретатора python. К примеру, с его помощью можно завершить работу скрипта, узнать вес объекта, получить пути к библиотекам, узнать операционную систему, узнать кодировку файлов по умолчанию и многое другое.
Если вы планируете участвовать в олимпиадах, то обязаны так же обрабатывать потоковый ввод. Для своих программ можно обойтись и без него.
Я перечислил самые полезные функции, остальное всегда можно прочитать в документации (да, её стоит читать) или загуглить.
Подписывайтесь на канал 👉@pythonofff
Евродвушки в Тюмени в ипотеку от 19 923 ₽/мес
Современный ЖК в Тюменской слободе. Квартиры в ипотеку с низкой ставкой. Качественная отделка от застройщика — переезжайте сразу после сдачи.
Все для комфортной жизни:
✅ Перспективная локация
✅ Функциональные планировки
✅ Ремонт и мебель от застройщика
✅ Подземный паркинг в подарок
Зафиксируйте условия и получите подборку планировок!
Получить предложение
Проектная декларация на сайте https://наш.дом.рф/. Застройщик: ООО СЗ «Космос». Финансовые услуги оказывает: ПАО "Сбербанк".
#реклама
mrqz.me
О рекламодателе
Функции высшего порядка
Функции высшего порядка - функции принимающие или возвращающие другие функции. Очень говорящее название, запомнить очень просто
Чуть ранее мы говорили про lambda, они очень хорошо взаимодействуют с высшими функциями. Про одну из них мы говорили - map(). Она может принимать в себя лямбду, но это не дает такой большой функциональности.
Еще одна функция-итератор - filter()
Она поможет отфильтровать списки или итераторы. Первым принимает функцию, если она возвращает True, то пропускает элемент, вторым аргументом принимает список или итератор.
Не забывайте комбинировать функции!
Подписывайтесь на канал 👉@pythonofff
Конструктор класса
У классов практически во всех языках есть конструкторы — это такие специальные методы, которые вызываются автоматически и инициализируют экземпляр класса.
В Python конструкторы в классах имеют название __init__(), и их почти всегда переопределяют. Делается это для того, чтобы назначить свойства объекту и выполнить предварительные действия.
Подписывайтесь на канал 👉@pythonofff
Крупнейший университет искусственного интеллекта
Приглашаем на бесплатный однодневный интенсив по AI!
Освой искусственный интеллект для профессионального роста: создавай нейросети, автоматизируй бизнес-задачи и зарабатывай на AI-решениях.
✨ 8 000+ студентов со всего мира
✨ 600+ AI-проектов, созданных студентами
✨ Сборная Университета — победители крупнейших AI-хакатонов России
✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие)
✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие)
Будем рады видеть тебя в наших рядах!
Узнать больше
#реклама 16+
neural-university.ru
О рекламодателе
Оформление кода
Все вы знаете, что в python есть своя философия. Именно отсюда берутся определенные правила и стандарты. В пайтон такое соглашение назвали PEP 8 (читается - пэп).
Соответствие пепу позволяет видеть основную структуру вашего кода другим разработчикам. Не нужно привыкать к другому оформлению кода. Если вы привыкли как-то оформлять код, а увидели что-то совершенно другое, то вы поймете.
Основные моменты:
Используйте пробелы, разрешается использование табов, но смешивание запрещено. Отступ соответствует 4 пробелам. Хорошие редакторы кода автоматически заменяют табы на пробелы.
Вокруг операторов +, -, =, *, /, ** должны быть пробелы.
Строка не должна превышать 101 символа
Импорты можно делать только по одному на строку! При этом из одного модуля можно доставать несколько нужных объектов. Порядок тоже важен:
- стандартные библиотеки;
- сторонние;
- созданные вами
Подписывайтесь на канал 👉@pythonofff
Заглушки
Для создания пустых функций и классов есть сразу два способа соответствующих правилам PEP: "pass" и "...". Предпочтительнее использовать первый вариант. Он означает буквальным счетом пустоту, даже применить функции dir() или help() не получится. А вот три точки - объект.
Их применение более широкое. Мы видели точки, когда выводили бесконечный список. Но то, был просто вывод, а не наш объект. Ellipsis применяется так же для создания пустых списков. Он показывает, что внутри не что-то одно, а много. На практике его используют лишь в документации и при создании все тех же пустых функций.
На картинке пример программы проверяющий пароль от юзера. Сохранение в БД мы еще не решили как писать, поэтому просто создали заглушку.
Подписывайтесь на канал 👉@pythonofff
Квартиры в Тюмени с первым взносом 0 ₽. ЖК «Астро»
Современный ЖК в Тюменской слободе. Квартиры в ипотеку без первого взноса с низкой ставкой на весь срок.
Все для комфортной жизни:
✅ Эргономичные планировки
✅ Ремонт и мебель от застройщика
✅ 15 минут до центра Тюмени
✅ Паркинг или кладовая в подарок
Зафиксируйте условия и получите подборку планировок!
Получить предложение
Финансовые услуги оказывает: ПАО "Сбербанк".
#реклама
mrqz.me
О рекламодателе
В одну строчку
Python гибкий язык и позволяет многое сделать в одну строчку. К примеру, матрицу из одних нулей. Или постоянно возрастающий список.
Такие методы лучше использовать когда надо сгенерировать что-то маленькое или нужное. Если использовать нужно сейчас и строго по одному, то лучше использовать итераторы. Об итераторах подробнее расскажем чуть позже.
Примеры списочных выражений на картинке. В следующий раз не придется набирать одинаковый текст несколько раз.
Подписывайтесь на канал 👉@pythonofff
Распаковка
Неудобно каждый раз для вывода объединять строки через join() или тем более как-то объединять числа. Мы можем распаковать кортеж или список, воспользовавшись звездочкой *. Со словарями данный способ не работает.
На самом деле применение более широкое. Звездочка может также собирать несколько значений в одну переменную. Очень удобно применять для функций с бесконечным количеством аргументов или только с именованными аргументами.
Подписывайтесь на канал 👉@pythonofff
Выполнить строку - eval()
Говорят, каждый программист должен написать калькулятор. Но если вы python разработчик, то вы можете сделать это в одну строчку:
print(eval(input()))
Что за eval и почему это работает?
eval() создана чтобы выполнять выражения и функции, обязательно возвращая какой-то результат. Так можно облегчить написание кода, принимая строкой словари, списки.
Единственное, что не умеет eval - присваивать что-то переменным. Зато она может их использовать!
Правильное применение функции сильно упростит вам жизнь.
Подписывайтесь на канал 👉@pythonofff
🔥 Получи 120 вебинаров и занятий по AI бесплатно 🔥
Это именно то, что нужно, чтобы быть в курсе всех трендов в мире AI
Вас ждет огромная база контента. Сейчас в библиотеке:
🔸 89 вебинаров
🔸 18 записей реалити
🔸 4 мастер-класса
🔸 12 примеров занятий
🔸 9 занятий с тренинга по трудоустройству в IT
🔸 44 задачи по Python
Университет искусственного интеллекта — это:
1. Крупнейший AI-университет в РФ и СНГ
2. 8000+ студентов со всего мира
3. 600+ созданных студентами AI-проекта
4. Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет)
5. Сборная Университета - победители крупнейших AI-хакатонов России
6. Трудоустраиваем выпускников в крупнейшие компании, такие как Яндекс, ВТБ, Сбербанк, Роскосмос и другие
🤖 Откройте доступ прямо сейчас и подберите тему под свою задачу!
Потоковый ввод
Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специальной "командой" на Windows — Ctrl + D. Запустить потоковый ввод можно через библиотеку sys и метод stdin.
Если требуется получить и тут же обработать строку, то так и пишем: sys.stdin
Если надо в начале прочитать весь потоковый ввод, а затем обработать, то sys.stdin.readlines()
На картинке представлено 2 варианта.
Подписывайтесь на канал 👉@pythonofff
Библиотека showballstemmer
Работали когда-нибудь над поисковиками? Хороший поисковик должен много чего уметь, например, находить по минимальному запросу.
Некоторые используют pymorph2 (первая слишком много потребляет ресурсов), но ведь достаточно определять основу слова, а не начальную форму для нахождения большинства результатов.
Библиотека showballstemmer и занимается тем, что определяет основу слова, что делает поиск более точным. А главное — библиотека мало потребляет, а результат получается намного лучше.
В начале следует импортировать модуль требуемого языка, к примеру вот модули английского, русского и французского соответственно: EnglishStemmer, FrenchStemmer, RussianStemmer.
Подписывайтесь на канал 👉@pythonofff
Новые бесплатные курсы в канале Selectel Newsfeed.
Подойдут всем: от новичков до продвинутых айтишников.
Вас ждут обзоры, инструкции и статьи, которые помогут разобраться в темах структурно и последовательно.
Вступайте в сообщество IT-специалистов в Telegram от Selectel.
Подписаться
#реклама 16+
О рекламодателе
Очистка элементов в последовательности
Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти.
Иногда возникает необходимость удалить ненужные объекты в последовательности. Как раз для этого и используют itertools, а именно метод compress.
Первым аргументом передается какой-либо контейнер, например список. Вторым аргументом — логические значения, соответствующие элементам в последовательности.
Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее.
Подписывайтесь на канал 👉@pythonofff
Как вывести все методы класса в Python?
Для того, чтобы вывести все методы класса, Вы можете воспользоваться методами dir(), callable(), getattr()
Подписывайтесь на канал 👉@pythonofff
Помощь в трудоустройстве в IT-сфере!
В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно!
Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита.
Для этого нужно:
- Перейти по ссылке
- Заполнить анкету и ответить на вопросы (занимает менее 3 минут)
- На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать
Перейти на сайт
#реклама 16+
urban-university.ru
О рекламодателе
Анонимные функции
Часто функции нужны только один раз, причем короткие. И избыточно создавать под них функцию и придумывать ей имя.
Для таких случаев существуют лямбда функции, так выглядит их создание:
<аргументы>: <выражение>
Такие функции обязан знать каждый программист, их применение сильно сокращает код.
Подписывайтесь на канал 👉@pythonofff
Бесконечные списки
Мы уже рассказывали про важность копирования списков. Но именно из-за такой процедуры появляется возможность создавать бесконечные списки. Дойти до конца такого списка невозможно, при этом он потребляет минимум памяти. Попробуйте создать сами.
На картинке (см. выше) видно создание. А затем мы пробуем модуль copy, чтобы узнать сможет ли он сделать глубокое копирование бесконечного объекта?
Применить знание особо негде, но данное задание помогает понять работу списков. Возможно, такой вопрос задаст вам рекрутер на одном из собеседований.
Подписывайтесь на канал 👉@pythonofff
Получи грант на обучение в Центральном университете
Прояви себя, получи грант до 2,8 млн на обучение ИТ и бизнесу в вузе.
Для школьников 10-х и 11-х классов, СПО.
Подать заявку
#реклама
apply.centraluniversity.ru
О рекламодателе
Параметры функции *args, **kwargs
Думаю, многие хоть раз видели такую запись, сейчас мы узнаем, что это за магические символы. Сообщу сразу, что параметры функции *args и **kwargs – общепринятые имена переменных, а разбирать мы будем звездочки перед ними.
В примере функция принимает обязательный аргумент value, а остальных аргументов она как бы не ожидает. В таком случае *args упаковывает все не именованные аргументы в кортеж, а **kwargs – все именованные в словарь.
В целом, конструкция с *args, **kwargs получается достаточно полезной, если мы не знаем, кто и в каких целях будет использовать нашу функцию. То есть, мы можем запихнуть в аргументы после такого практически всё.
Подписывайтесь на канал 👉@pythonofff
В одну строку - итератор
Вы уже знаете, как писать многие крутые штуки в одну строчку. Но можно ускорить работу кода, используя итераторы.
Итератор - объект, который хранит начало, конец, текущий элемент и правило преобразований. В итоге мы можем получать только новые значения.
Преимущество в том, что итераторы потребляют намного меньше памяти, чем списки и кортежи.
Вы уже точно знаете один итератор и даже пользуетесь им - range().
А есть еще один очень полезный - map(). Он принимает два аргумента, функцию для задания правила преобразования и что-то, что требуется преобразовать.
Подписывайтесь на канал 👉@pythonofff
Виртуальные сервера от 575 руб./мес. Защита от DDOS!
Техническая информация:
- SLA 99.998%
- 9 ЦОД TIER 3
- ISPmanager 6
- Поддержка 24/7
- Windows & Linux
- Бесплатный IPv4
- Неограниченный трафик
- Скорость доступа 1 ГБит/c
- SSD/NVMe/HDD до 5000Gb
- Высокочастотные процессоры от 3.6 Ghz
Наши услуги:
- Для бизнеса;
- DDoS защита;
- Мониторинг 24/7;
- Готовые образы ОС;
- Облачное Хранилище;
- Корпоративный VPN сервер;
- Комплексное администрирование.
Локации серверов:
💻 Россия
💻 Нидерланды
💻 США
💻 Молдова
FoxCloud - Надежное решение для вашего бизнеса!⚡
Перейти на сайт
#реклама 16+
foxcloud.net
О рекламодателе
Прокачайтесь в программировании и информатике в сильном комьюнити
Ученики 5—11-х классов, это для вас. Т-Банк зовет на бесплатный курс по информатике и программированию. Можете научиться решать задачи любого уровня: от базовых до олимпиадных.
Каждую неделю вас будут ждать тренировки, практика и разбор сложных задач. Учиться можно онлайн или офлайн в одном из 13 городов.
Успейте записаться и начните прокачивать навыки на курсе «Алгоритмы и структуры данных»
Дизайн в FIGMA с нуля. Бесплатный курс + портфолио
Онлайн-программа с наставником и чатом. Дизайн от профессионалов. Доступ 0 руб.
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
Как записать список в csv файл на Python?
Для записи в csv-файл определенного массива, Вы можете воспользоваться библиотекой csv.
В примере мы показываем, как будем записывать весь список в один столбец и в одну строку.
Подписывайтесь на канал 👉@pythonofff