Forwarded from 🐍 PythonGuru — работа и стажировки для программистов
Слив курса - Разработка Telegram ботов на Python
Описание и структура курса:
Научись разрабатывать ботов любой сложности для месседжера Telegram. В этом подробном курсе построение ботов от А до Я.
- Как работать с API Telegram
- Преимущества и принципы разработки ботов на асинхронной библиотеке Aiogram
- Использовать язык программирования Python для написания ботов
- Взаимодействие между ботами, чатами, каналами и группами
- Создание кнопок, режим инлайн, deeplinking
- Как использовать Базы данных в ботах (PostgreSQL и SQLite)
- Работа с удаленным сервером на Ubuntu
- Много много прочего
Скачать с Mail облака
Описание и структура курса:
Научись разрабатывать ботов любой сложности для месседжера Telegram. В этом подробном курсе построение ботов от А до Я.
- Как работать с API Telegram
- Преимущества и принципы разработки ботов на асинхронной библиотеке Aiogram
- Использовать язык программирования Python для написания ботов
- Взаимодействие между ботами, чатами, каналами и группами
- Создание кнопок, режим инлайн, deeplinking
- Как использовать Базы данных в ботах (PostgreSQL и SQLite)
- Работа с удаленным сервером на Ubuntu
- Много много прочего
Скачать с Mail облака
Forwarded from Python Lounge: работа и стажировки для программистов
В Python имя переменной может состоять из одного подчеркивания: _. Хотя обычно такие имена не достаточно описательны и не должны использоваться, есть по крайней мере три случая, когда _ имеет общепринятый смысл.
Во-первых, интерактивные интерпретаторы Python используют _ для хранения результата последнего выполненного выражения:
В-третьих, _ используется, когда вам нужно придумать имена для значений, которые вам не нужны:
Во-первых, интерактивные интерпретаторы Python используют _ для хранения результата последнего выполненного выражения:
>>> 2 + 2Во-вторых, руководство модуля gettext рекомендует псевдоним его функции gettext() для _(), чтобы минимизировать загромождение вашего кода.
4
>>> _
4
В-третьих, _ используется, когда вам нужно придумать имена для значений, которые вам не нужны:
for _ in range(10):
print('Hello!')
Forwarded from Moscow Python (Valentin Dombrovsky)
В эту пятницу в 19 часов - очередной Python-стрим. На этот раз мы поговорим о том, зачем качать понимание экосистемы Пайтона с Алексеем Пироговым и Никитой Соболевым из Drylabs! https://www.youtube.com/watch?v=llMvi3p50c0
YouTube
Python-стрим - Качаем понимание экосистемы Пайтона!
Мы продолжаем Python-стримы - на этот раз у нас сразу 2 гостя: СТО Drylabs Никита Соболев и ментор Python в Drylabs Алексей Пирогов.
С 1-го по 15-е декабря Drylabs проведёт серию вебинаров под общим названием "Python-карантин. Вторая волна".
Темы вебинаров:…
С 1-го по 15-е декабря Drylabs проведёт серию вебинаров под общим названием "Python-карантин. Вторая волна".
Темы вебинаров:…
Forwarded from CoolPython
Работа с JSON
Хотела собрать для менти ссылок по работе с JSON, но не нашла, чтобы в одном месте последовательно, исчерпывающе и без воды рассказали бы все самое важное, что питонисту нужно знать о работе с этим форматом.
Поэтому сделала лонгрид по JSON'у сама и делюсь с вами! Статью в PDF можно посмотреть на моем Patreon'e, она бесплатная. Рассчитана на уровень джуниоров и стажеров. В канал выложить не могу, потому что слишком много текста, а в тексте картинки, схемы и даже один мем!
Из головных болей: не получилось сверстать так идеально, как хотелось. Начала с LaTeX, поняла, что верстается долго, перешла в markdown, но там некрасиво легли картинки. Наконец, сделала в Notion и все равно недовольна. Дайте знать, если умеете красиво верстать без боли и адских страданий или можете рассказать, на какой платформе вам удобнее читать лонгриды.
🐠
Хотела собрать для менти ссылок по работе с JSON, но не нашла, чтобы в одном месте последовательно, исчерпывающе и без воды рассказали бы все самое важное, что питонисту нужно знать о работе с этим форматом.
Поэтому сделала лонгрид по JSON'у сама и делюсь с вами! Статью в PDF можно посмотреть на моем Patreon'e, она бесплатная. Рассчитана на уровень джуниоров и стажеров. В канал выложить не могу, потому что слишком много текста, а в тексте картинки, схемы и даже один мем!
Из головных болей: не получилось сверстать так идеально, как хотелось. Начала с LaTeX, поняла, что верстается долго, перешла в markdown, но там некрасиво легли картинки. Наконец, сделала в Notion и все равно недовольна. Дайте знать, если умеете красиво верстать без боли и адских страданий или можете рассказать, на какой платформе вам удобнее читать лонгриды.
🐠
Forwarded from Pythonist.ru - образование по питону
Задача с кодом. Список файлов в директории
Условие: Выведите список файлов в заданной директории.
Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.
#задача #coding
Условие: Выведите список файлов в заданной директории.
Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.
#задача #coding
Forwarded from Pythonist.ru - образование по питону
Топ. 7 фишек Python, максимально улучшающих твой код
Рассказываем об особенностях языка Python, позволяющих писать более лаконичный и читаемый код.
Читать статью
#топ
Рассказываем об особенностях языка Python, позволяющих писать более лаконичный и читаемый код.
Читать статью
#топ
Forwarded from Pythonist.ru - образование по питону
Tips & Tricks. Как разбить строку на символы в Python?
В этой статье мы разберем, как в Python можно разбить строку на символы, в том числе с использованием встроенной функции list() и цикла for.
Читать статью
#строки #функции
В этой статье мы разберем, как в Python можно разбить строку на символы, в том числе с использованием встроенной функции list() и цикла for.
Читать статью
#строки #функции
Forwarded from Pythonist.ru - образование по питону
Задача с кодом. Пишем функцию для «тупого добавления»
Условие: Создайте функцию, которая принимает два параметра. Если оба параметра — строки, то сложите их математически, если оба — integer, тогда сконкатенируйте их. Если параметры разного типа — верните None.
Примеры:
stupid_addition(1, 2) ➞ "12"
stupid_addition("1", "2") ➞ 3
stupid_addition("1", 2) ➞ None
Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.
#задача #coding
Условие: Создайте функцию, которая принимает два параметра. Если оба параметра — строки, то сложите их математически, если оба — integer, тогда сконкатенируйте их. Если параметры разного типа — верните None.
Примеры:
stupid_addition(1, 2) ➞ "12"
stupid_addition("1", "2") ➞ 3
stupid_addition("1", 2) ➞ None
Решение на нашем сайте. Совет: прежде чем смотреть решение, потратьте хотя бы 30 минут на написание своего собственного кода, т.к. лучше подумать и не решить, чем решить, но не подумать.
#задача #coding
Forwarded from Pythonist.ru - образование по питону
Топ. 10 проектов в 10 строк кода
Учиться программировать лучше всего на простых проектах. Онлайн-клуб для разработчиков и исследователей предлагает создать 10 проектов на Python, каждый из которых можно уложить в 10 строк кода.
Читать статью
#топ
Учиться программировать лучше всего на простых проектах. Онлайн-клуб для разработчиков и исследователей предлагает создать 10 проектов на Python, каждый из которых можно уложить в 10 строк кода.
Читать статью
#топ
Forwarded from Pythonist.ru - образование по питону
Топ. Python 3: изменяемый, неизменяемый…
Рассказываем с самого начала, чем изменяемые объекты отличаются от неизменяемых и как это проявляется на практике. Также затрагиваем тему преаллокации и передачи аргументов в функции.
Читать статью
#ооп
Рассказываем с самого начала, чем изменяемые объекты отличаются от неизменяемых и как это проявляется на практике. Также затрагиваем тему преаллокации и передачи аргументов в функции.
Читать статью
#ооп
Forwarded from Pythonist.ru - образование по питону
Django. Что нового в третьей версии фреймворка?
Рассматриваем новые функции, появившиеся в Django 3, а также рассказываем, что удалено в новой версии.
Читать статью
#django
Рассматриваем новые функции, появившиеся в Django 3, а также рассказываем, что удалено в новой версии.
Читать статью
#django
Forwarded from Python Academy
Композиция классов
Один из способов организации взаимодействия между классами – это композиция, или же ассоциация, классов.
В этом случае один из классов (в примере выше это
Ассоциированные объекты зачастую могут циклически ссылаться друг на друга, что ломает стандартный механизм сборки мусора. В таком случае необходимо использовать слабые ссылки из модуля
#классы #ооп
Один из способов организации взаимодействия между классами – это композиция, или же ассоциация, классов.
В этом случае один из классов (в примере выше это
Salary
) является полем другого (Employee
). Сложного здесь, как вы видите, ничего нет.Ассоциированные объекты зачастую могут циклически ссылаться друг на друга, что ломает стандартный механизм сборки мусора. В таком случае необходимо использовать слабые ссылки из модуля
weakref
, о котором поговорим позже.#классы #ооп
Forwarded from Python Academy
Assert
Если выполнить инструкцию
Исключения
Не нужно, например, обрабатывать пользовательский ввод и пытаться обработать исключение AssertionError блоком try except. Если таких мест будет очень много, то это затронет и производительность программы.
#исключения #assert
Если выполнить инструкцию
assert
с логическим выражением, результат которого равен True
, ничего не произойдет. Но если попробовать выполнить инструкцию assert
с логическим выражением, которое равно False
, то будет сгенерировано исключение AssertionError
.Исключения
AssertionError
предназначены скорее для программистов. При написании программ на этапе разработки мы должны видеть, что делаем что-то не так (к примеру, передали в функцию некорректное значение). Не нужно, например, обрабатывать пользовательский ввод и пытаться обработать исключение AssertionError блоком try except. Если таких мест будет очень много, то это затронет и производительность программы.
#исключения #assert
Forwarded from Python Academy
Влейся в ряды единомышленников
Кстати, если вы не знали, то у нас также есть чат, в котором уже 500+ участников — @python_academy_chat.
Присоединяйтесь, задавайте свои вопросы и не забывайте помогать другим :)
Кстати, если вы не знали, то у нас также есть чат, в котором уже 500+ участников — @python_academy_chat.
Присоединяйтесь, задавайте свои вопросы и не забывайте помогать другим :)
Forwarded from Python Academy
Статические методы
Отличие статического метода от обычного метода класса в том, что первый привязан к классу, а не объекту.
Такой тип методов по умолчанию не принимает ни объект, ни класс – прописывать
Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.
#классы
Отличие статического метода от обычного метода класса в том, что первый привязан к классу, а не объекту.
Такой тип методов по умолчанию не принимает ни объект, ни класс – прописывать
self
или cls
в аргументах не нужно. То есть статические методы не могут модифицировать ни объект, ни сам класс. Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.
#классы
Forwarded from Python Academy
Наследование
Наследование позволяет создавать новый класс на основе уже существующего. Таким образом, можно создать новый класс, взяв за основу все методы и атрибуты другого.
В данном случае класс
Наследование классов нужно для изменения поведения конкретного класса, а также для расширения его функционала.
#классы #ооп
Наследование позволяет создавать новый класс на основе уже существующего. Таким образом, можно создать новый класс, взяв за основу все методы и атрибуты другого.
В данном случае класс
Person
является родительским классом, также его называют базовым классом или суперклассом. А класс Employee
называется дочерним классом или подклассом.Наследование классов нужно для изменения поведения конкретного класса, а также для расширения его функционала.
#классы #ооп
Forwarded from Python Academy
Геттеры и сеттеры
В объектно-ориентированных языках распространено использование геттеров и сеттеров для безопасной работы с приватными полями. Например, в C# для этого есть удобная конструкция
В Python геттер реализуется через декоратор
Оба метода должны иметь одинаковое название, по которому можно будет обращаться как к обычному атрибуту.
#классы #property
В объектно-ориентированных языках распространено использование геттеров и сеттеров для безопасной работы с приватными полями. Например, в C# для этого есть удобная конструкция
{ get; set; }
.В Python геттер реализуется через декоратор
@property
, а сеттер в виде @свойство.setter
. В примере метод геттера называется age
, поэтому декоратор сеттера – @age.setter
.Оба метода должны иметь одинаковое название, по которому можно будет обращаться как к обычному атрибуту.
#классы #property
Forwarded from Хабр
Что происходит сейчас в мире информационных технологий? На каждом углу реклама курсов, которые сделают из тебя настоящего программиста за 21 день с гарантированным трудоустройство сразу на позицию %Language% Middle Developer.
Вы безумны, остановитесь пока не поздно!
Вы безумны, остановитесь пока не поздно!
Forwarded from Хабр
Каверзные вопросы по Python
В каждом языке программирования есть моменты, которые требуют повышенной концентрации внимания или больше практики для своего понимания. Python в этом плане не исключение.
В каждом языке программирования есть моменты, которые требуют повышенной концентрации внимания или больше практики для своего понимания. Python в этом плане не исключение.