Pythoner
Open in Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Show more6 786
Subscribers
-824 hours
-197 days
-4430 days
Posts Archive
6 783
✈️Python поддерживает множество кодировок, которые могут использоваться для представления текста. Некоторые из наиболее распространенных кодировок, поддерживаемых Python, включают UTF-8, ASCII и Latin-1. UTF-8 является наиболее распространенной кодировкой и используется в большинстве веб-приложений.
➡️Как работает encoding в Python
Python использует объекты типа str для хранения строковых значений. Когда вы создаете строку в Python, она сохраняется в памяти в виде последовательности символов Unicode. Однако, когда необходимо сохранить строку в файл или передать ее по сети, она должна быть преобразована в байты, и для этого используется определенная кодировка. Это происходит с помощью метода encode.
Пример:
text = 'Пример текста'
encoded_text = text.encode('utf-8')
В этом примере мы создаем строку text, содержащую русские символы, и затем преобразуем ее в байты, используя кодировку UTF-8. Результатом будет объект типа bytes, содержащий закодированные данные.
Обратное преобразование из байтов в строку осуществляется с помощью метода decode:
decoded_text = encoded_text.decode('utf-8')
🐍Pythoner6 783
💻Copilot - это инструмент искусственного интеллекта, разработанный GitHub и OpenAI. Он использует глубокое обучение и нейронные сети для создания кода на основе контекста.
➡️Когда вы начинаете вводить код в свой редактор, Copilot предлагает вам варианты завершения кода на основе контекста. Он может предложить вам функции, классы, методы и другие элементы кода, которые могут соответствовать вашим потребностям. Инструмент также может помочь вам проверить синтаксическую правильность кода и даже создать целый класс или функцию.
Сам Copilot
🐍Pythoner
6 783
➡️Метод .isnumeric()
Метод .isnumeric() в Python используется для проверки, содержит ли строка только числа. Если все символы в строке являются числами, этот метод возвращает значение True. В противном случае возвращается False. Этот метод очень полезен при валидации ввода данных, когда вы хотите убедиться, что пользователь ввел только числа.
str1 = '12345'
print(str1.isnumeric()) # Вывод: True
str2 = '12345abc'
print(str2.isnumeric()) # Вывод: False
➡️Метод .isalpha()
Метод .isalpha() в Python, с другой стороны, используется для проверки, содержит ли строка только буквы. Если все символы в строке являются буквами, этот метод возвращает значение True. В противном случае возвращается False. Этот метод также полезен при валидации ввода данных, когда вы хотите убедиться, что пользователь ввел только буквы.
str3 = 'abc'
print(str3.isalpha()) # Вывод: True
str4 = 'abc123'
print(str4.isalpha()) # Вывод: False
🐍Pythoner6 783
Ну все! Теперь не нужно тратить деньги на топовые курсы и книги по программированию — их выложили в Telegram бесплатно
Все найденные курсы собирают тут — @portalToIT
По этим курсам выучить любой язык за 7 дней вообще не проблема, находка для начинающих программистов.
6 783
❓Разбор
У нас есть два класса, причем один наследуется от другого. Здесь идет простое создание объекта, а потом вызов метода у класса-ребенка. В методе классе-ребенка вызывается метод класса-родителя, а там выводится 'b'.
Переданные параметры никак не влияют на ответ, важно только их количество.
Важно помнить, что self принимает в себя сам объект. Если вызов идет через объект, то self передается автоматически.
6 783
➡️Декларативное программирование в Python
Декларативное программирование - это стиль программирования, который сосредотачивается на "что", а не на "как" программы. Он включает в себя указание желаемого вывода программы без указания того, как его достичь. В Python одним из примеров декларативного программирования является использование генераторов списков.
numbers = [1, 2, 3, 4, 5]
squares = [num ** 2 for num in numbers]
В этом примере мы объявляем, что мы хотим создать список квадратов от 1 до 5. Мы не указываем, как достичь этого вывода. Генераторы списков в Python заботятся об этом за нас.
➡️Императивное программирование в Python
Императивное программирование - это стиль программирования, который сосредотачивается на "как" программы. Он включает в себя указание последовательных инструкций для достижения желаемого вывода. В Python одним из примеров императивного программирования является использование цикла for.
numbers = [1, 2, 3, 4, 5]
squares = []
for num in numbers:
squares.append(num ** 2)
В этом примере мы указываем, как достичь желаемого вывода, создав список квадратов от 1 до 5. Мы используем цикл for для итерации по каждому числу и добавляем его квадрат в новый список.
🐍Pythoner6 783
➡️Декларативное программирование
Декларативное программирование - это подход к написанию кода, в котором программа описывает желаемый результат, а не способ его достижения. В декларативном программировании вы описываете, что должно произойти, а не как это должно произойти. Это означает, что вы не указываете последовательность шагов, которые должны быть выполнены, а вместо этого указываете, какой результат вы хотите получить.
Одним из преимуществ декларативного программирования является то, что код может быть проще для понимания и сопровождения. Также декларативный подход может быть более выразительным, поскольку он позволяет описывать более сложные операции и структуры.
➡️Императивное программирование
Императивное программирование - это подход к написанию кода, в котором программа описывает последовательность шагов, необходимых для достижения желаемого результата. В императивном программировании вы описываете, как нужно выполнить задачу, а не только то, что должно получиться в результате.
Одним из преимуществ императивного программирования является то, что вы можете более точно контролировать процесс выполнения программы. Это означает, что вы можете управлять памятью, производительностью и другими аспектами выполнения программы.
❓Разница между декларативным и императивным программированием
Основное различие между декларативным и императивным программированием заключается в том, как программа описывает желаемый результат. В декларативном программировании программа описывает желаемый результат, а в императивном - последовательность шагов, необходимых для достижения желаемого результата.
Другое отличие заключается в том, что декларативное программирование более абстрактно, поскольку оно описывает желаемый результат, а не конкретный способ его достижения. Императивное программирование более конкретно, поскольку оно описывает последовательность шагов, которые должны быть выполнены.
🐍Pythoner
6 783
Все надоело и пропал интерес, чувствуешь себя амебой и хочется только залипать в телефоне. Бывает?
Психолог взрослого человека - канал для айтишников, у которых периодически опускаются руки и отключается мозг, ибо переработки и постоянная тревожность не приводят к другим исходам.
▪️ Как научиться отвлекаться от работы и отдыхать?
▪️ Как совместить кучу рабочих задач и время с семьей?
▪️ Как справиться с прокрастинацией?
▪️ Как не растерять запал, даже если начальник и коллеги 💩 и кажется, что ничего не выходит?
Подписывайтесь на канал @vadimpetrov_psy и научитесь работать без упахивания, выгорания и ущерба для личной жизни!
👨🏻💻 Псс. Заходите в закреп канала - там много полезного, и даже бесплатный мини-курс.
6 783
➡️Модуль difflib в Python - это мощный инструмент, который помогает разработчикам сравнивать последовательности. Он особенно полезен для сравнения текстовых данных и нахождения различий между ними.
➡️Функция get_close_matches
Функция get_close_matches() используется для поиска наиболее похожих вариантов в последовательности. Это полезно, например, при реализации системы автодополнения, где нужно предложить пользователю наиболее вероятные варианты на основе его ввода.
Например:
import difflib
words = ['кот', 'собака', 'кит', 'слон']
difflib.get_close_matches('кот', words)
В этом примере функция возвращает: ['кот', 'кит'].
➡️Функция ndiff
Функция ndiff() используется для сравнения двух последовательностей и выявления различий между ними. Она возвращает генератор, который производит строки, иллюстрирующие различия между последовательностями. Это полезно, например, при сравнении версий текстовых документов.
Например:
import difflib
str1 = "кот"
str2 = "кит"
diff = difflib.ndiff(str1, str2)
print('\\n'.join(diff))
В этом примере функция выводит:
к
- о
+ и
т
➡️Функция SequenceMatcher
Функция SequenceMatcher() является более общей и мощной функцией, чем ndiff(). Она позволяет сравнивать любые две последовательности и определять степень их сходства.
Например:
import difflib
str1 = "кот"
str2 = "кит"
match = difflib.SequenceMatcher(None, str1, str2)
print(match.ratio())
В этом примере функция возвращает: 0.6666666666666666, что означает, что строки совпадают на 66.67%.
🐍Pythoner6 783
➡️Django - это популярный фреймворк для веб-разработки, написанный на языке Python. Он облегчает процесс создания веб-приложений, предоставляя разработчикам множество инструментов и функций. Но как и у любого другого инструмента, у Django есть свои плюсы и минусы.
➡️Преимущества Django
1. Быстрая разработка - Django предоставляет множество готовых компонентов, что позволяет быстро создавать веб-приложения. Например, Django имеет встроенную систему аутентификации, которую можно использовать для регистрации и авторизации пользователей без необходимости разработки этой функциональности с нуля.
2. Безопасность - Django предоставляет множество инструментов для обеспечения безопасности веб-приложений. Это включает в себя защиту от CSRF-атак, SQL-инъекций и других видов атак на веб-приложения.
3. Масштабируемость - Django позволяет легко масштабировать веб-приложения. Это может быть особенно полезно для больших проектов, которые нуждаются в масштабировании для обработки большого количества пользователей.
➡️Недостатки Django
1. Сложность - хотя Django предоставляет множество готовых компонентов, изучение фреймворка может быть сложным, особенно для новичков в веб-разработке. Django имеет свой собственный способ работы с запросами и базами данных, который может отличаться от других фреймворков.
2. Ограничения при создании пользовательского интерфейса - Django не является лучшим инструментом для создания сложных пользовательских интерфейсов. Он предоставляет базовые инструменты для создания интерфейса, но, если вам нужно что-то более сложное, вам может прийтись использовать другие инструменты.
3. Сложность в обработке асинхронных запросов - Django не обрабатывает асинхронные запросы так же легко, как другие фреймворки. Если вы работаете с приложением, которое требует обработки большого количества асинхронных запросов, вам может прийтись использовать другие инструменты.
🐍Pythoner
6 783
🔓 Давно хотел попробовать себя в IT, но нет средств на обучение? Доступ к знаниям разблокирован!
😎 IT Syndicate — лучшее место для поиска курсов по IT-технологиям совершенно бесплатно.
У нас ты найдешь курсы по любым специальностям и уровням подготовки!
🔥 Заходи прямо сейчас, чтобы не потерять — IT Syndicate!
6 783
➡️Введение
CI и CD - это два понятия, которые становятся все более популярными в сфере разработки программного обеспечения. Их основная цель - упростить процесс разработки, тестирования и доставки программного обеспечения. В этой статье мы рассмотрим, что такое CI и CD и как они работают.
➡️Что такое CI?
CI - это сокращение от "Continuous Integration", что в переводе означает "непрерывная интеграция". Это процесс автоматической сборки и тестирования кода в репозитории каждый раз, когда происходит изменение в коде. Это позволяет быстро выявлять ошибки и устранять их, что делает процесс разработки более эффективным и быстрым.
➡️Что такое CD?
CD - это сокращение от "Continuous Delivery" или "Continuous Deployment", что в переводе означает "непрерывная доставка" или "непрерывное развертывание". Это процесс автоматической доставки программного обеспечения в производственную среду после успешного прохождения всех тестов в процессе CI. Он позволяет быстро и надежно доставлять программное обеспечение в производственную среду, что сокращает время между разработкой и выпуском.
➡️Как работают CI и CD?
CI и CD работают вместе, чтобы ускорить и упростить процесс разработки программного обеспечения. Когда разработчик отправляет изменения в репозиторий, CI-система автоматически собирает и тестирует код. Если тесты проходят успешно, CD-система автоматически доставляет программное обеспечение в производственную среду. Это позволяет быстро и эффективно доставлять высококачественное программное обеспечение в производственную среду.
🐍Pythoner
6 783
➡️Целые числа (int)
Целые числа в Python занимают разное количество байт в зависимости от их значения. В Python 3 все целые числа являются объектами класса int. Этот класс использует переменную длину, что означает, что количество байт, необходимых для хранения целого числа, зависит от его значения и может быть любым.
➡️Вещественные числа (float)
Вещественные числа в Python занимают 8 байт. Это соответствует 64 битам двоичного числа с плавающей точкой стандарта IEEE 754.
➡️Строки (str)
Строки в Python занимают количество байт, равное количеству символов в строке, умноженному на размер каждого символа. В Python 3 по умолчанию используется кодировка Unicode, которая занимает 2 байта на символ, если символ может быть представлен в 16-битной форме, и 4 байта в противном случае.
🐍Pythoner
6 783
Хотите тестировать приложения на Python быстрее?
Создайте пакет в Python и интегрируйте его с проектами Django.
О том, как это сделать, мы поговорим на открытом уроке «Как создать свою библиотеку и ускорить тестирование в Django REST framework».
Приглашаем веб-разработчиков, Python-разработчиков, бэкенд-разработчиков, девопс-инженеров.
Вы научитесь:
- Создавать пакет Python
- Пользоваться инструментами для тестирования приложений в Django REST Framework
- Писать тест-кейсы для юнит-тестов
- Интегрировать созданный пакет в проекты Django
Занятие проведёт Python-разработчик и опытный преподаватель OTUS – Леонид Орлов.
Бонус! Всем участникам – скидка 5% на любой курс OTUS
23 мая в 19:00 МСК
Записаться на воркшоп - https://otus.pw/Xd0m/?erid=LjN8KAM2N
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
6 783
➡️Бинарное дерево - это иерархическая структура данных, в которой каждый узел имеет не более двух потомков: левый и правый. В этом блоге мы рассмотрим, как создать бинарное дерево в Python.
В бинарном дереве узел является основным элементом. Каждый узел имеет данные и ссылки на левого и правого потомков. В Python мы можем создать узел, определив класс Node с инициализатором, который устанавливает данные и оба потомка.
💡Пример кода:
class Node:
def __init__(self, data):
self.left = None
self.right = None
self.data = data
➡️Создание бинарного дерева
После того как узел определен, мы можем создать бинарное дерево. Начальный узел известен как корень. Мы создаем бинарное дерево, добавляя новые узлы в качестве левого или правого потомка корня или любого другого узла.
💡Пример кода:
root = Node(1)
root.left = Node(2)
root.right = Node(3)
root.left.left = Node(4)
root.left.right = Node(5)
➡️Обход бинарного дерева
Обход - это процесс посещения каждого узла в дереве. Существуют различные методы обхода, включая прямой (Preorder), симметричный (Inorder) и обратный (Postorder) обход. В Python мы можем реализовать эти методы с помощью рекурсии или стеков.
Пример кода для прямого обхода:
def preorder_traversal(root):
if root:
print(root.data)
preorder_traversal(root.left)
preorder_traversal(root.right)
🐍Pythoner
Available now! Telegram Research 2025 — the year's key insights 
