uz
Feedback
Pythoner

Pythoner

Kanalga Telegram’da o‘tish

Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode

Ko'proq ko'rsatish
6 809
Obunachilar
+124 soatlar
+27 kunlar
-3730 kunlar
Postlar arxiv
✈️Основное различие между этими двумя методами состоит в том, что __new__ обрабатывает создание объекта, а __init__ обрабатывает его инициализацию. __new__ вызывается автоматически при вызове имени класса (при создании экземпляра), тогда как init вызывается каждый раз, когда экземпляр класса возвращается __new__, передавая возвращаемый экземпляр в __init__ в качестве параметра self, поэтому даже если вы сохранили экземпляр где-нибудь глобально/статически и возвращали его каждый раз из __new__, для него все-равно будет каждый раз вызываться __init__. Пример:

class Singleton:
    _instance = None

    def __new__(cls):
        if cls._instance is None:
            print("Создание объекта")
            cls._instance = super().__new__(cls)
        return cls._instance

    def __init__(self):
        print("Инициализация объекта")

a = Singleton()
b = Singleton()
⬆️Вывод:
Создание объекта
Инициализация объекта
Инициализация объекта

✈️Модульные тесты (или unit-тесты) — это автоматические тесты, которые проверяют работу отдельных функций, методов или классо
✈️Модульные тесты (или unit-тесты) — это автоматические тесты, которые проверяют работу отдельных функций, методов или классов в изоляции от остальной программы. ➡️Цель модульного теста — убедиться, что маленький блок кода работает правильно при разных входных данных:
# Функция, которую будем тестировать
def add(a, b):
    return a + b
Теперь напишем модульный тест с использованием стандартного модуля unittest:
import unittest

class TestAddFunction(unittest.TestCase):
    def test_add_positive_numbers(self):
        self.assertEqual(add(2, 3), 5)

    def test_add_negative_numbers(self):
        self.assertEqual(add(-1, -2), -3)

    def test_add_zero(self):
        self.assertEqual(add(0, 5), 5)

if __name__ == '__main__':
    unittest.main()
➡️Зачем нужны модульные тесты: - Находят ошибки в логике функции. - Упрощают рефакторинг (можно смело менять код — тесты покажут, что сломалось). - Помогают при разработке: можно быстро проверить, работает ли новый код. - Улучшают структуру кода — приходится писать функции так, чтобы их легко тестировать. 🐍 Pythoner

✈️Функция .strip() в Python по умолчанию удаляет пробелы в начале и конце строки. Это может быть особенно полезно при работе
✈️Функция .strip() в Python по умолчанию удаляет пробелы в начале и конце строки. Это может быть особенно полезно при работе с данными, которые могут содержать случайные пробелы, которые могут помешать анализу данных или программированию. Например, строка ' Привет, мир! ' станет 'Привет, мир!' после использования .strip().
s = '     Привет, мир!     '
print(s.strip())  # Выведет: 'Привет, мир!'
➡️.strip() с аргументами В дополнение к удалению пробелов, .strip() также может быть использован для удаления определенных символов из строки, передав их в качестве аргумента. Например, если мы хотим удалить определенный символ, такой как '#', из строки, мы можем это сделать, вызвав .strip('#'). Это удалит все экземпляры '#' из начала и конца строки.
s = '###Привет, мир!###'
print(s.strip('#'))  # Выведет: 'Привет, мир!'
➡️.lstrip() и .rstrip() Python также предлагает две вариации функции .strip(), которые являются .lstrip() и .rstrip(). Эти функции работают так же, как .strip(), но .lstrip() удаляет символы только с левой стороны строки, а .rstrip() - только с правой стороны.
s = '###Привет, мир!###'
print(s.lstrip('#'))  # Выведет: 'Привет, мир!###'
print(s.rstrip('#'))  # Выведет: '###Привет, мир!'
🐍 Pythoner

Авторский канал посвященый языку Python и игровому движку для 2D и 3D игр - Ursina Engine . Подробные гайды и примеры кода.👨
Авторский канал посвященый языку Python и игровому движку для 2D и 3D игр - Ursina Engine . Подробные гайды и примеры кода.👨‍💻.  Заходи и узнаешь , как написать игру на Python без сложностей!!!😉 А также автор канала запустил обучающий курс по Ursina Engine.  Все необходимые ссылки Вы найдёте на канале! Присоединяйся к нашему сообществу!!!

🤔Разбор Лямбда-функция принимает x и возвращает кортеж (x, x ** 2, x ** 3) Для x = 3: (3, 3нкция приним3) (3, 9, 27) 🐍 Pythoner

Что выдаст код выше❔
Anonymous voting

photo content

✈️Пагинация — это разбиение большого списка данных на страницы. Она помогает не перегружать интерфейс и backend. Например, ко
✈️Пагинация — это разбиение большого списка данных на страницы. Она помогает не перегружать интерфейс и backend. Например, когда выводим 10 товаров на страницу, а не все 1000 сразу. ➡️Вот простой пример пагинации с использованием Python и Flask:
from flask import Flask, request, jsonify

app = Flask(__name__)

# Наши "данные" — список из 100 чисел
DATA = list(range(1, 101))

@app.route('/items')
def get_items():
    # Получаем параметры из запроса
    page = int(request.args.get('page', 1))
    per_page = int(request.args.get('per_page', 10))

    # Вычисляем границы
    start = (page - 1) * per_page
    end = start + per_page

    # Отдаём нужный кусок
    return jsonify({
        'page': page,
        'per_page': per_page,
        'items': DATA[start:end]
    })

if __name__ == '__main__':
    app.run(debug=True)
🔫Пример запроса:
http://localhost:5000/items?page=3&per_page=5

#Ответ: элементы с 11 по 15
🐍 Pythoner

✈️Requests-HTML — это библиотека Python, которая объединяет простоту Requests и мощность PyQuery для парсинга HTML. Она позво
✈️Requests-HTML — это библиотека Python, которая объединяет простоту Requests и мощность PyQuery для парсинга HTML. Она позволяет не только извлекать данные из веб-страниц, но и выполнять JavaScript, что делает её идеальным инструментом для веб-скрапинга современных сайтов с динамическим контентом. ➡️Основные возможности Requests-HTML: - Парсинг HTML: Requests-HTML предоставляет удобные методы для парсинга HTML-документов с помощью CSS-селекторов и XPath. - Выполнение JavaScript: Библиотека может выполнять JavaScript на странице, что позволяет получать данные, загруженные динамически. - Сессии и куки: Поддерживает работу с сессиями и куки, что полезно для авторизации и поддержания состояния. ➡️Примеры использования: 1. Парсинг HTML с CSS-селекторами:
from requests_html import HTMLSession

session = HTMLSession()
r = session.get('https://example.com')

# Извлечение заголовков
titles = r.html.find('h1')
for title in titles:
    print(title.text)
2. Выполнение JavaScript:
from requests_html import HTMLSession

session = HTMLSession()
r = session.get('https://example.com')

# Выполнение JavaScript на странице
r.html.render()

# Извлечение динамического контента
dynamic_content = r.html.find('#dynamic-element', first=True)
print(dynamic_content.text)
Полезные ссылки: Официальный сайт GitHub 🐍 Pythoner

Подержанные автомобили в автосалоне со скидкой до 20% В наличии 3500 автомобилей с пробегом под Ваши потребности по доступным
Подержанные автомобили в автосалоне со скидкой до 20% В наличии 3500 автомобилей с пробегом под Ваши потребности по доступным ценам. Быстрое получение кредита по двум документам на лучших условиях. Комплект шин в подарок при покупке авто!👍 Выгодные предложения. Бюджетные варианты. Широкий ассортимент подержанных машин. — Спецпредложения до 100 000₽ — Гарантия 1 год — Льготные программы кредитования — Кредит по двум документам — Первоначальный взнос от 15% ⚡ 15 банков-партнеров. Акции и подарки. Одобрение кредита за 60 минут. Выгодная ставка по кредиту. Посмотрите цены в каталоге и выберите свой автомобиль на сайте уже сейчас! Посмотреть каталог Изучите все условия кредита (займа) на сайте в соответствующем разделе. Оценивайте свои финансовые возможности и риски. Финансовые услуги оказывает: АО "Альфа-Банк", ПАО "Банк ВТБ", Альфа-Страхование. #реклама tomsk.crystal-motors.ru О рекламодателе

🌐GitLab - это веб-платформа для управления репозиториями Git, используемыми для хранения и управления исходным кодом приложе
🌐GitLab - это веб-платформа для управления репозиториями Git, используемыми для хранения и управления исходным кодом приложений. Это инструмент для разработки программного обеспечения, который предоставляет широкий набор функций, в том числе управление версиями, совместную работу, непрерывную интеграцию и непрерывную доставку. ➡️Управление версиями Одной из основных функций GitLab является управление версиями. Эта функция позволяет разработчикам сохранять различные версии кода, которые могут быть использованы для восстановления предыдущих версий при необходимости. Благодаря системе контроля версий, которая реализована в GitLab, разработчики могут работать над одним и тем же проектом, не опасаясь потерять свою работу. ➡️Совместная работа GitLab также предоставляет широкие возможности для совместной работы над проектами. Разработчики могут создавать задачи, определять приоритеты и назначать ответственных за их выполнение. Это позволяет упростить коммуникацию между разработчиками и ускорить процесс разработки. ➡️Непрерывная интеграция и доставка GitLab также предоставляет инструменты для непрерывной интеграции и доставки (CI/CD), что позволяет автоматизировать процесс сборки, тестирования и развертывания кода. Это ускоряет процесс разработки и повышает качество кода. 🐍 Pythoner

🔥 Самые нужные каналы для Python разработчика, чтобы расти в доходе 💸Python | Вопросы собесовPython | Вакансии с удаленкойPython | LeetCodePython | Тесты Подпишись, чтобы не потерять ☝️

🤔Разбор Функция any() используется для проверки наличия хотя бы одного True элемента в итерируемом объекте. У нас есть: False —> False 0 —> False [] —> пустой список —> False () —> пустой кортеж —> False Все элементы - False, а функция any() требует хотя бы один True. Ответ: False 🐍 Pythoner

Что выдаст код выше❔
Anonymous voting

photo content

Крупнейший университет искусственного интеллекта Приглашаем на бесплатный однодневный интенсив по AI! Освой искусственный инт
Крупнейший университет искусственного интеллекта Приглашаем на бесплатный однодневный интенсив по AI! Освой искусственный интеллект для профессионального роста: создавай нейросети, автоматизируй бизнес-задачи и зарабатывай на AI-решениях. ✨ 8 000+ студентов со всего мира ✨ 600+ AI-проектов, созданных студентами ✨ Сборная Университета — победители крупнейших AI-хакатонов России ✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие) ✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие) Будем рады видеть тебя в наших рядах! Узнать больше #реклама 16+ neural-university.ru О рекламодателе

⚡️Пошаговый план: как стать аналитиком данных в 2025 Хотите попасть в аналитику, но теряетесь в море информации и не понимает
⚡️Пошаговый план: как стать аналитиком данных в 2025 Хотите попасть в аналитику, но теряетесь в море информации и не понимаете, какие навыки действительно важны? Боитесь, что без опыта вас не возьмут на работу? И да, ещё один популярный вопрос — а что, если мне 30/40/50+ лет? Андрон Алексанян — эксперт по аналитике с 8 летним опытом и по совместительству CEO Simulative — покажет рабочие схемы и четкий план, как устроиться в аналитику быстрее, даже если у вас нет опыта. Что будет на вебинаре? 🟠 Разберем полный роадмап: что учить, в каком порядке, до какого уровня; 🟠 Лайфхаки трудоустройства: — Покажем реальные примеры, как оформить резюме и портфолио, чтобы привлекать внимание; — Обсудим какие отклики работают, а какие сразу отправляют в корзину; — Изнанка найма: инсайдерский взгляд на процессы отбора 🟠 Практические техники для новичков: разберём, как компенсировать недостаток опыта и быстро закрывать пробелы в знаниях. 🕗 Важно досмотреть вебинар до конца, чтобы получить бонус от нас, который поможет бустануть карьеру. 😶Зарегистрироваться на бесплатный вебинар

✈️Декоратором называется функция, которая принимает функцию с таким же именем, как у исходной, но с расширенной функционально
✈️Декоратором называется функция, которая принимает функцию с таким же именем, как у исходной, но с расширенной функциональностью. Декораторы часто используются во фреймворках, чтобы упростить интеграцию пользовательских функций с фреймворком. ➡️Паттерн Декоратор настолько полезен, что в Python встроена специальная поддержка для него. Декорировать можно как функции, так и методы. ➡️Кроме того, Python поддерживает декораторы классов: функции, которые принимают класс в качестве аргумента и возвращают новый класс с таким же именем, как у исходного, но с дополненной функциональностью. Иногда декораторы классов удобно использовать как альтернативу производным классам. 🐍 Pythoner