Pythoner
Open in Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Show more6 624
Subscribers
+124 hours
-87 days
-3430 days
Posts Archive
6 624
✈️BeautifulSoup — это мощная библиотека Python для парсинга HTML и XML документов. Она предоставляет инструменты для извлечения данных из веб-страниц, что делает ее идеальным инструментом для веб-скрапинга и анализа данных. BeautifulSoup легко интегрируется с другими библиотеками, такими как Requests, что позволяет создавать мощные веб-приложения.
➡️Основные возможности BeautifulSoup:
1.Парсинг HTML и XML:
BeautifulSoup позволяет парсить HTML и XML документы, включая сложные структуры и вложенные элементы.
2. Извлечение данных:
Библиотека предоставляет инструменты для извлечения данных из HTML и XML, включая поисковые функции и фильтры.
3. Работа с тегами и атрибутами:
BeautifulSoup позволяет легко работать с тегами и атрибутами, включая добавление, удаление и изменение элементов.
4. Поддержка различных парсеров:
BeautifulSoup поддерживает несколько парсеров, включая html.parser, lxml и html5lib, что позволяет выбирать наиболее подходящий для ваших задач.
5. Интеграция с другими библиотеками:
BeautifulSoup легко интегрируется с другими библиотеками Python, такими как Requests, что позволяет создавать мощные веб-приложения.
➡️Примеры использования. Парсинг HTML:
from bs4 import BeautifulSoup
# HTML-документ
html_doc = """
<html>
<head>
<title>Пример страницы</title>
</head>
<body>
<h1>Заголовок</h1>
<p>Это пример веб-страницы.</p>
<a href="https://example.com">Ссылка</a>
</body>
</html>
"""
# Создание объекта BeautifulSoup
soup = BeautifulSoup(html_doc, 'html.parser')
# Извлечение заголовка
title = soup.title.string
print('Заголовок:', title)
# Извлечение всех абзацев
paragraphs = soup.find_all('p')
for p in paragraphs:
print('Абзац:', p.text)
# Извлечение ссылки
link = soup.find('a')['href']
print('Ссылка:', link)
Парсинг XML:
from bs4 import BeautifulSoup
# XML-документ
xml_doc = """
<root>
<item>
<name>Пример</name>
<value>123</value>
</item>
</root>
"""
# Создание объекта BeautifulSoup
soup = BeautifulSoup(xml_doc, 'xml')
# Извлечение всех элементов <item>
items = soup.find_all('item')
for item in items:
name = item.find('name').text
value = item.find('value').text
print(f'Имя: {name}, Значение: {value}')
⚡️Ссылки:
Официальный сайт
GitHub
Документация
💡Заключение:
BeautifulSoup — это мощная библиотека для парсинга HTML и XML документов в Python. Она позволяет легко извлекать данные из веб-страниц, что делает ее идеальным инструментом для веб-скрапинга и анализа данных. BeautifulSoup легко интегрируется с другими библиотеками, такими как Requests, что позволяет создавать мощные веб-приложения. Благодаря простому и интуитивному API, BeautifulSoup легко использовать и интегрировать в ваши проекты.
🐍 Pythoner6 624
😮 Добавлена новая база слитых курсов на 800ГБ:
Python:
https://t.me/+A5wOmjJrOw8xMjIy
Программирование:
https://t.me/+vuMfGuhvVTAyYzIy
Графика и дизайн:
https://t.me/+jF38ipib239kMDli
Frontend и Web:
https://t.me/+R_0B7SelmWAyMWZi
6 624
➡️NumPy (Numerical Python) - это библиотека Python, которая предоставляет поддержку для работы с многомерными массивами и эффективными математическими функциями. В NumPy индексы используются для доступа к элементам массива. В NumPy существует несколько способов индексации массивов:
1. Индексирование с помощью целых чисел: Можно использовать целые числа для доступа к элементам массива. Массивы в NumPy индексируются начиная с 0:
import numpy as np
arr = np.array([10, 20, 30, 40, 50])
print(arr[2]) # Выводит 30 (значение с индексом 2)
2. Индексирование многомерных массивов: В многомерном массиве можно использовать кортеж индексов для доступа к элементам:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr[1, 2]) # Выводит 6 (элемент во второй строке и третьем столбце)
3. Использование срезов (slicing): Можно использовать срезы для извлечения подмассива из массива:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[1:4]) # Выводит [2, 3, 4] (элементы со второго по четвертый)
4. Индексирование с использованием булевых массивов: Можно использовать булевы массивы для фильтрации элементов массива:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
mask = np.array([True, False, True, False, True])
print(arr[mask]) # Выводит [1, 3, 5] (выбирает элементы, соответствующие True)
5. Индексирование fancy indexing: Позволяет выбирать элементы массива, используя массив индексов:
import numpy as np
arr = np.array([10, 20, 30, 40, 50])
indices = np.array([1, 3, 4])
print(arr[indices]) # Выводит [20, 40, 50] (выбирает элементы с индексами 1, 3 и 4)
⬆️Это основные методы индексации в NumPy, которые помогут вам эффективно работать с массивами и многомерными данными в Python. NumPy предоставляет мощные средства работы с данными и вычислениями, особенно в области научных вычислений и анализа данных.
🐍 Pythoner6 624
Крупнейший университет искусственного интеллекта
Приглашаем на бесплатный однодневный интенсив по AI!
Освой искусственный интеллект для профессионального роста: создавай нейросети, автоматизируй бизнес-задачи и зарабатывай на AI-решениях.
✨ 8 000+ студентов со всего мира
✨ 600+ AI-проектов, созданных студентами
✨ Сборная Университета — победители крупнейших AI-хакатонов России
✨ Стажировки в крупнейших компаниях России (РЖД, Ростелеком, РУДН, Совкомбанк, Самолет и другие)
✨ Трудоустраиваем выпускников в крупнейшие компании (Яндекс, ВТБ, Сбербанк, Роскосмос и другие)
Будем рады видеть тебя в наших рядах!
Узнать больше
#реклама 16+
neural-university.ru
О рекламодателе
6 624
Ищешь высокооплачиваемые проекты? Попробуй SkillStaff
SkillStaff — это платформа для ИТ-специалистов, менеджеров и креаторов, которым мало одного оклада. Здесь можно найти клиентов, выполнять их проекты и увеличивать свой доход.
- Проекты с гибким графиком: part time, full time, удаленка и гибрид
- Ставка за час работы — та, что ты сам выбрал
- Клиенты — ведущие бренды, проверенные с юридической точки зрения при регистрации на платформе
- Оплата поступает ежемесячно на расчетный счет исполнителя
- Удобный личный кабинет и функционал, автоматизирующий документооборот
Все, что нужно для работы — иметь статус самозанятого или ИП, а платформа поможет со всеми нюансами.
Регистрируйся прямо сейчас
Зарегистрироваться
#реклама 16+
skillstaff.ru
О рекламодателе
6 624
✈️SymPy — это библиотека Python для символьных вычислений. Она предоставляет инструменты для работы с математическими выражениями, включая алгебру, исчисление, линейную алгебру, комбинаторику и многое другое. SymPy позволяет выполнять вычисления с символьными переменными, что делает ее идеальным инструментом для математиков, физиков и инженеров, которые работают с аналитическими вычислениями.
➡️Основные возможности SymPy:
1.Символьные переменные и выражения:
SymPy позволяет создавать символьные переменные и выполнять операции с ними, не присваивая им конкретных числовых значений.
2.Алгебра:
SymPy предоставляет инструменты для работы с алгебраическими выражениями, включая упрощение, разложение и факторинг.
3.Исчисление:
SymPy поддерживает дифференцирование, интегрирование, пределы и ряды Тейлора.
4.Линейная алгебра:
SymPy позволяет работать с матрицами и векторами, включая операции сложения, умножения, определения и решения систем линейных уравнений.
5.Решение уравнений:
SymPy предоставляет инструменты для решения алгебраических и дифференциальных уравнений.
6.Графики:
SymPy интегрируется с Matplotlib для визуализации математических функций и выражений.
➡️Примеры использования:
1.Создание символьных переменных и выражений:
from sympy import symbols, sin, cos
# Создание символьных переменных
x, y = symbols('x y')
# Создание выражения
expr = sin(x) + cos(y)
# Вывод выражения
print(expr)
2.Работа с матрицами:
from sympy import Matrix
# Создание матрицы
A = Matrix([[1, 2], [3, 4]])
# Вычисление определителя
det_A = A.det()
print('Определитель матрицы A:', det_A)
# Решение системы линейных уравнений
B = Matrix([1, 2])
solutions = A.solve(B)
print('Решение системы уравнений:', solutions)
➡️Документация и дополнительные ресурсы:
Официальный сайт
GitHub
Документация
🐍 Pythoner6 624
Получи грант на обучение в Центральном университете
Центральный университет выдает гранты на 4 года обучения в бакалавриате.
Грант покрывает до 100% стоимости обучения. Участвуй в отборе, чтобы получить грант.
Получи доступ к уникальным активностям для абитуриентов. Для выпускников 10-х, 11-х классов и колледжей.
Подать заявку
#реклама
apply.centraluniversity.ru
О рекламодателе
6 624
Хотите освоить программирование или сменить работу в IT?
А вы готовы всего за час создать и опубликовать целое приложение?
Отлично! Тогда присоединяйтесь к онлайн-конференции «Как создать первый проект на Python и Java с нуля»!
Новички в IT узнают:
- какой язык программирования лучше выбрать для старта
- как быстро создать и развернуть приложение
- как работают Python и Java на практике
- как размещать код на GitHub и работать с репозиториями
- какие дополнительные инструменты использовать для профессионального роста
Программисты на других языках, и те, кто ищет новые возможности в IT:
- поймёте, какие IT-технологии сейчас востребованы
- узнаете, какие навыки прокачивать для успешной смены деятельности
- отработаете навыки быстрой сборки и быстрого развёртывания проекта
- узнаете о новых возможностях для обучения и развития
Также вас ждёт квиз с призами!
Спикеры:
Сурен Хоренян: бэкенд-разработчик на Python, руководитель команды в «VK Рекламе»
Сергей Прощаев: Java-разработчик
Бонус! Скидка 7% на любой курс OTUS и полезные материалы в подарок!
18 апреля, 19:00 МСК
Бесплатно
Записаться на событие - https://otus.pw/vEWG/?erid=2W5zFHGbdS8
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
6 624
+5
В канале Selectel Newsfeed новые бесплатные курсы!
Наши бесплатные курсы для специалистов всех уровней помогут разобраться в темах быстро, структурно и последовательно.
Вступайте в сообщество IT-специалистов в Telegram от Selectel и развивайте новые навыки📚
Смотреть
#реклама 16+
О рекламодателе
6 624
✈️Сегодня разберём тему, которая частенько вызывает головную боль даже у опытных разработчиков — области видимости переменных и ключевые слова global и nonlocal.
➡️В чём суть?
Представьте, что вы пишете функцию внутри функции и вам нужно изменить переменную "снаружи". Без special words Python скажет: "Неа, не получится!"
➡️Как это работает?
Global:
x = 5 # глобальная переменная
def change_x():
global x # говорим Python, что хотим менять глобальную x
x = 10 # теперь работает!
change_x()
print(x) # выведет 10
Nonlocal:
def outer():
counter = 0 # переменная внешней функции
def inner():
nonlocal counter # хотим менять counter из outer
counter += 1 # работает!
inner()
print(counter) # выведет 1
outer()
⚡️Важные моменты:
- Global можно использовать для создания новых переменных
- Nonlocal работает только с существующими переменными
- В Python 3.13 пофиксили баги с global в блоках else и except
➡️Типичные ошибки:
Неправильно:
def bad_function():
print(x) # ошибка!
global x # global нужно объявлять до использования
x = 10
Правильно:
def good_function():
global x
print(x) # теперь всё ок
x = 10
➡️Полезные инструменты:
Чтобы проверить, какие переменные у вас есть:
print(globals()) # все глобальные переменные
print(locals()) # все локальные переменные
💡Практические советы:
- Используйте global только когда действительно необходимо
- Nonlocal отлично подходит для счетчиков и аккумуляторов
- Всегда документируйте использование global и nonlocal в комментариях
- Старайтесь минимизировать использование глобальных переменных
🐍 Pythoner6 624
✈️Astropy — это мощная библиотека Python, предназначенная для астрономических вычислений и анализа данных. Она предоставляет инструменты для работы с астрономическими данными, включая обработку изображений, анализ спектров, управление временем и координатами, а также множество других функций, которые облегчают работу астрономам и исследователям.
⚡️Основные возможности Astropy:
- Управление временем и датами: Astropy предоставляет инструменты для работы с астрономическим временем, включая преобразование между различными временными шкалами и форматами.
- Координатные системы: Библиотека позволяет работать с астрономическими координатами, включая преобразование между различными системами координат (например, экваториальными, эклиптическими и галактическими).
- Обработка изображений: Astropy включает инструменты для чтения, записи и обработки астрономических изображений, включая поддержку формата FITS (Flexible Image Transport System).
- Анализ спектров: Библиотека предоставляет функции для анализа астрономических спектров, включая измерение линий спектра и расчет физических параметров.
- Астрономические единицы и константы: Astropy предоставляет набор астрономических единиц и фундаментальных констант, которые можно использовать в вычислениях.
- Интеграция с другими библиотеками: Astropy интегрируется с другими популярными библиотеками Python, такими как NumPy, SciPy, Matplotlib и Pandas, что позволяет создавать мощные астрономические приложения.
➡️Примеры использования:
1.Работа с временем:
from astropy.time import Time
# Создание объекта времени
t = Time('2023-10-10 12:00:00', format='iso', scale='utc')
# Преобразование времени в другой формат
print(t.jd) # Вывод времени в формате Julian Date
2.Работа с координатами:
from astropy.coordinates import SkyCoord
from astropy import units as u
# Создание объекта координат
c = SkyCoord(ra=10.68458*u.degree, dec=41.26917*u.degree, frame='icrs')
# Преобразование координат в другую систему
print(c.galactic) # Вывод координат в галактической системе
3.Анализ спектров:
from astropy import units as u
from astropy.modeling import models, fitting
# Создание спектра
wavelength = [400, 500, 600, 700] * u.nm
flux = [1, 2, 3, 4] * u.Jy
# Подгонка модели к спектру
model = models.Gaussian1D(amplitude=2*u.Jy, mean=500*u.nm, stddev=50*u.nm)
fitter = fitting.LevMarLSQFitter()
fitted_model = fitter(model, wavelength, flux)
# Вывод параметров модели
print(fitted_model)
💡Заключение
Astropy предоставляет широкий набор инструментов для работы с астрономическими данными, включая обработку изображений, анализ спектров, управление временем и координатами. А благодаря простому и интуитивному API, Astropy легко интегрируется в проекты.
🐍 Pythoner6 624
Хотите освоить программирование или сменить работу в IT?
А вы готовы всего за час создать и опубликовать целое приложение?
Отлично! Тогда присоединяйтесь к онлайн-конференции «Как создать первый проект на Python и Java с нуля»!
Новички в IT узнают:
- какой язык программирования лучше выбрать для старта
- как быстро создать и развернуть приложение
- как работают Python и Java на практике
- как размещать код на GitHub и работать с репозиториями
- какие дополнительные инструменты использовать для профессионального роста
Программисты на других языках, и те, кто ищет новые возможности в IT:
- поймёте, какие IT-технологии сейчас востребованы
- узнаете, какие навыки прокачивать для успешной смены деятельности
- отработаете навыки быстрой сборки и быстрого развёртывания проекта
- узнаете о новых возможностях для обучения и развития
Также вас ждёт квиз с призами!
Спикеры:
Сурен Хоренян: бэкенд-разработчик на Python, руководитель команды в «VK Рекламе»
Сергей Прощаев: Java-разработчик
Бонус! Скидка 7% на любой курс OTUS и полезные материалы в подарок!
18 апреля, 19:00 МСК
Бесплатно
Записаться на событие - https://otus.pw/agHXY/?erid=2W5zFGDrpf2
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
6 624
🤔Разбор
Атрибуты класса (count) являются общими для всех экземпляров класса.
Метод __del__ вызывается автоматически, когда объект уничтожается (например, после выполнения del или когда программа завершается).
Если объект больше не имеет ссылок, он удаляется сборщиком мусора, и вызывается деструктор.
🐍 Pythoner
