#python python... PYTHON 🔛 🚀
11 subscribers
914 photos
7 videos
158 files
1.54K links
Download Telegram
Задача с кодом. Список файлов в директории

Условие: Выведите список файлов в заданной директории.

Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.

#задача #coding
Топ. 7 фишек Python, максимально улучшающих твой код

Рассказываем об особенностях языка Python, позволяющих писать более лаконичный и читаемый код.

Читать статью

#топ
Tips & Tricks. Как разбить строку на символы в Python?

В этой статье мы разберем, как в Python можно разбить строку на символы, в том числе с использованием встроенной функции list() и цикла for.

Читать статью

#строки #функции
Задача с кодом. Пишем функцию для «тупого добавления»

Условие: Создайте функцию, которая принимает два параметра. Если оба параметра — строки, то сложите их математически, если оба — integer, тогда сконкатенируйте их. Если параметры разного типа — верните None.

Примеры:
stupid_addition(1, 2) ➞ "12"
stupid_addition("1", "2") ➞ 3
stupid_addition("1", 2) ➞ None

Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.

#задача #coding
Топ. 10 проектов в 10 строк кода

Учиться программировать лучше всего на простых проектах. Онлайн-клуб для разработчиков и исследователей предлагает создать 10 проектов на Python, каждый из которых можно уложить в 10 строк кода.

Читать статью

#топ
Топ. Python 3: изменяемый, неизменяемый…

Рассказываем с самого начала, чем изменяемые объекты отличаются от неизменяемых и как это проявляется на практике. Также затрагиваем тему преаллокации и передачи аргументов в функции.

Читать статью

#ооп
Django. Что нового в третьей версии фреймворка?

Рассматриваем новые функции, появившиеся в Django 3, а также рассказываем, что удалено в новой версии.

Читать статью

#django
Forwarded from Python Academy
Композиция классов

Один из способов организации взаимодействия между классами – это композиция, или же ассоциация, классов.

В этом случае один из классов (в примере выше это Salary) является полем другого (Employee). Сложного здесь, как вы видите, ничего нет.

Ассоциированные объекты зачастую могут циклически ссылаться друг на друга, что ломает стандартный механизм сборки мусора. В таком случае необходимо использовать слабые ссылки из модуля weakref, о котором поговорим позже.

#классы #ооп
Forwarded from Python Academy
Assert

Если выполнить инструкцию assert с логическим выражением, результат которого равен True, ничего не произойдет. Но если попробовать выполнить инструкцию assert с логическим выражением, которое равно False, то будет сгенерировано исключение AssertionError.

Исключения AssertionError предназначены скорее для программистов. При написании программ на этапе разработки мы должны видеть, что делаем что-то не так (к примеру, передали в функцию некорректное значение).

Не нужно, например, обрабатывать пользовательский ввод и пытаться обработать исключение AssertionError блоком try except. Если таких мест будет очень много, то это затронет и производительность программы.

#исключения #assert
Forwarded from Python Academy
Влейся в ряды единомышленников

Кстати, если вы не знали, то у нас также есть чат, в котором уже 500+ участников — @python_academy_chat.

Присоединяйтесь, задавайте свои вопросы и не забывайте помогать другим :)
Forwarded from Python Academy
Статические методы

Отличие статического метода от обычного метода класса в том, что первый привязан к классу, а не объекту.

Такой тип методов по умолчанию не принимает ни объект, ни класс – прописывать self или cls в аргументах не нужно. То есть статические методы не могут модифицировать ни объект, ни сам класс.

Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.

#классы
Forwarded from Python Academy
Наследование

Наследование позволяет создавать новый класс на основе уже существующего. Таким образом, можно создать новый класс, взяв за основу все методы и атрибуты другого.

В данном случае класс Person является родительским классом, также его называют базовым классом или суперклассом. А класс Employee называется дочерним классом или подклассом.

Наследование классов нужно для изменения поведения конкретного класса, а также для расширения его функционала.

#классы #ооп
Forwarded from Python Academy
Геттеры и сеттеры

В объектно-ориентированных языках распространено использование геттеров и сеттеров для безопасной работы с приватными полями. Например, в C# для этого есть удобная конструкция { get; set; }.

В Python геттер реализуется через декоратор @property, а сеттер в виде @свойство.setter. В примере метод геттера называется age, поэтому декоратор сеттера – @age.setter.

Оба метода должны иметь одинаковое название, по которому можно будет обращаться как к обычному атрибуту.

#классы #property
Forwarded from Хабр
Что происходит сейчас в мире информационных технологий? На каждом углу реклама курсов, которые сделают из тебя настоящего программиста за 21 день с гарантированным трудоустройство сразу на позицию %Language% Middle Developer.

Вы безумны, остановитесь пока не поздно!
Forwarded from Хабр
Каверзные вопросы по Python

В каждом языке программирования есть моменты, которые требуют повышенной концентрации внимания или больше практики для своего понимания. Python в этом плане не исключение.
Какие навыки тестировщика на Python востребованы в проектах?

Про актуальные технологии автотестирования расскажет 2 декабря Семён Вяземский, QA Lead одной из ведущих телекоммуникационных компаний. Семен поделится своим опытом, ответит на вопросы зрителей и представит программу онлайн-курса «Python QA Engineer». Это Demo day, где вы узнаете об особенностях курса, как организована практика и получите возможность сэкономить на обучении.

Хотите лучше подготовиться к встрече? Проходите вступительный тест, который поможет оценить ваш стартовый уровень. Регистрируйтесь на вебинар и запасайтесь вопросами https://otus.pw/Pcyz/
Advanced Python Development (2020)
Автор: Matthew Wilkes
Количество страниц: 628

Эта книга создана на основе базовых руководств по Python для объяснения различных особенностей языка, которые обычно не рассматриваются: от многократно используемых консольных скриптов, которые выполняют двойную работу в качестве микросервисов за счет использования точек входа, до эффективного использования asyncio для сопоставления данных из большого количества источников. Попутно книга охватывает линтинг на основе типов, тестирование с минимальными затратами и другие автоматические проверки качества, чтобы продемонстрировать надежный процесс разработки в реальном мире.

Скачать книгу
9 магических фактов об Python

Язык Python очень широк в использовании, простой для изучения и использования, но в нем всё-таки есть немного магии.

В статье ниже читайте об этом:

https://towardsdatascience.com/10-magical-facts-about-python-39d7f3a2c203

Не до конца понял либо есть что обсудить? - Сделай это в нашем
чате.

Твой Программист 💻
Forwarded from Python Academy
Дополнение про property

Важно отметить, что property – это класс, реализованный через протокол дескриптора. Его методы setter, getter, deleter и их использование в качестве декораторов – синтаксический сахар.

Конструктор property принимает на вход аргументы fget, fset, fdel, которые должны быть функциями. Они отвечают за получение, установку нового значения и удаление атрибута соответственно.

Простыми словами, в примере property прикрепляет функции get_age и set_age к атрибуту age. Также можно было реализовать условный delete_age, который отвечал бы за удаление атрибута.

Кстати, можете посмотреть простейшую реализацию такого свойства в официальной документации.

#классы #property