Pythoner
7.22K subscribers
859 photos
27 videos
4 files
653 links
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику.

Сотрудничество - @flattys
Цены - @serpent_media

Канал на бирже: https://telega.in/c/pythonercode
Download Telegram
DSL (Domain-Specific Language) — это специализированный язык программирования, созданный для решения узкоспециализированных задач. В отличие от общих языков программирования, таких как Python или JavaScript, DSL ориентирован на конкретную область применения: например, анализ данных, конфигурирование систем или управление бизнес-процессами.

🔎Python идеально подходит для создания DSL благодаря своей гибкости и мощным возможностям метапрограммирования.

➡️Зачем нужен DSL?

1. Упрощение задач: DSL позволяет описать сложные проблемы простым и понятным образом.
2. Доступность для неспециалистов: Специализированные языки могут быть более доступными для людей, не имеющих опыта в программировании.
3. Более читаемый код: DSL часто использует синтаксис, который ближе к предметной области, что делает код более понятным.

➡️Примеры использования DSL:
- SQL для работы с базами данных.
- HTML/CSS для создания веб-страниц.
- Ansible для автоматизации администрирования.

➡️Как создать DSL на Python?

Существует несколько подходов к созданию DSL на Python:


👀1. Использование встроенных возможностей Python

Вы можете использовать синтаксис Python для создания DSL, добавляя специализированные функции и классы. Этот подход называется "внутренним DSL" (Internal DSL).

Пример: Создание DSL для управления роботом
class Robot:
def move(self, distance):
print(f"Moving {distance} meters")

def turn(self, angle):
print(f"Turning {angle} degrees")

def robot_script():
robot = Robot()
robot.move(10)
robot.turn(90)
robot.move(5)

robot_script()


⬆️В этом примере мы создали простой DSL для управления роботом. Хотя это всё ещё Python, его синтаксис адаптирован под задачу.

👀2. Парсинг текста (External DSL)

Если вы хотите создать полностью самостоятельный язык, вам нужно реализовать парсер для обработки пользовательского синтаксиса. Этот подход называется "внешним DSL" (External DSL).

Шаги для создания External DSL:
1. Определите синтаксис вашего языка.
2. Напишите парсер для преобразования текста в структуры данных Python.
3. Реализуйте интерпретатор для выполнения этих структур.

👀Пример: Создание DSL для управления светофором

Предположим, мы хотим создать DSL для управления светофором. Его синтаксис может выглядеть так:
light red for 30 seconds
light green for 60 seconds
light yellow for 5 seconds


➡️Реализация парсера:
import re

class TrafficLight:
def __init__(self):
self.state = None

def set_light(self, color, duration):
print(f"Setting light to {color} for {duration} seconds")
self.state = color

def parse_script(script):
traffic_light = TrafficLight()
pattern = r"light (\w+) for (\d+) seconds"

for line in script.splitlines():
match = re.match(pattern, line)
if match:
color, duration = match.groups()
traffic_light.set_light(color, int(duration))

# Текст DSL
script = """
light red for 30 seconds
light green for 60 seconds
light yellow for 5 seconds
"""

parse_script(script)


⬆️Результат:

Setting light to red for 30 seconds
Setting light to green for 60 seconds
Setting light to yellow for 5 seconds

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥94👍3🤔1
➡️3. Использование инструментов для создания DSL

Если вы хотите ускорить процесс создания DSL, можно использовать специализированные инструменты, такие как:
- PLY (Python Lex-Yacc): Библиотека для создания лексеров и парсеров.
- Lark: Современный парсер с простым синтаксисом.
- ANTLR: Мощный инструмент для создания DSL, поддерживающий множество языков.

Пример с Lark:
from lark import Lark, Transformer

# Грамматика DSL
grammar = """
start: command+
command: "light" COLOR "for" NUMBER "seconds"
COLOR: "red" | "green" | "yellow"
NUMBER: /\d+/
%import common.WS
%ignore WS
"""

# Парсер
parser = Lark(grammar, start="start", parser="lalr", transformer=Transformer())

class TrafficLightTransformer(Transformer):
def command(self, items):
color, duration = items
print(f"Setting light to {color} for {duration} seconds")
return {"color": color, "duration": duration}

def COLOR(self, token):
return str(token)

def NUMBER(self, token):
return int(token)

# Текст DSL
script = """
light red for 30 seconds
light green for 60 seconds
"""

# Парсинг и выполнение
parsed = parser.parse(script)


➡️Примеры реальных DSL на Python

1. Django ORM: Язык запросов для работы с базами данных.
2. Pandas Query API: DSL для фильтрации и анализа данных.
3. Ansible Playbooks: DSL для автоматизации серверных задач.
4. SQLAlchemy: DSL для работы с базами данных на уровне Python.

💡Заключение

Создание DSL на Python — это мощный инструмент для решения узкоспециализированных задач. Вы можете выбрать между внутренними и внешними DSL в зависимости от ваших потребностей. Если вам нужна простота реализации, используйте Internal DSL, а если требуется полная свобода в создании синтаксиса, выбирайте External DSL.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54🔥3
✈️Pandas — это мощная библиотека Python для обработки и анализа данных. Она предоставляет удобные структуры данных, такие как DataFrame (таблицы) и Series (столбцы), которые позволяют легко манипулировать данными.

Pandas особенно полезен для работы с табличными данными, такими как CSV-файлы, Excel-таблицы или базы данных.

➡️Пример анализа данных с помощью Pandas
Допустим, у нас есть файл data.csv со следующим содержимым:
name,age,salary
Alice,30,50000
Bob,25,60000
Charlie,35,70000
David,28,55000
Eva,22,45000


Вот как мы можем проанализировать эти данные с помощью Pandas:
import pandas as pd

# Загружаем данные из CSV-файла
df = pd.read_csv('data.csv')

# Выводим первые 3 строки таблицы
print("Первые 3 строки:")
print(df.head(3))

# Считаем среднюю зарплату
average_salary = df['salary'].mean()
print(f"\nСредняя зарплата: {average_salary:.2f}")

# Находим самого высокооплачиваемого сотрудника
top_earner = df.loc[df['salary'].idxmax()]
print("\nСамый высокооплачиваемый сотрудник:")
print(top_earner)

# Группировка данных по возрастным группам
df['age_group'] = pd.cut(df['age'], bins=[18, 25, 35, 50], labels=['18-25', '26-35', '36-50'])
grouped = df.groupby('age_group')['salary'].mean()
print("\nСредняя зарплата по возрастным группам:")
print(grouped)


Результат:
Первые 3 строки:
name age salary
0 Alice 30 50000
1 Bob 25 60000
2 Charlie 35 70000

Средняя зарплата: 56000.00

Самый высокооплачиваемый сотрудник:
name Charlie
age 35
salary 70000
age_group 26-35
Name: 2, dtype: object

Средняя зарплата по возрастным группам:
age_group
18-25 45000.0
26-35 61666.7
36-50 NaN
Name: salary, dtype: float64


➡️Почему Pandas полезен?

— Удобство работы с данными: Pandas позволяет легко загружать, фильтровать и анализировать данные.
Широкие возможности: От простых статистических расчетов до сложной визуализации.
Интеграция с другими библиотеками: Pandas отлично работает с Matplotlib, Seaborn и Scikit-learn.

➡️Заключение
Pandas — это незаменимый инструмент для анализа данных в Python. Начните с простых примеров, таких как чтение и фильтрация данных, и постепенно переходите к более сложным задачам.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍6🔥3
✈️Виртуальное окружение — это изолированное пространство для работы с Python-проектами. Оно позволяет устанавливать зависимости конкретного проекта без влияния на другие проекты или системные пакеты.
Создание виртуального окружения особенно важно, когда разные проекты требуют разных версий одной и той же библиотеки.


➡️Как создать и использовать виртуальное окружение?
1.Установка модуля venv
Модуль venv входит в стандартную библиотеку Python 3.3+ и не требует дополнительной установки.

2.Создание виртуального окружения
Откройте терминал и выполните следующую команду:
python -m venv myenv

Здесь myenv — имя вашего виртуального окружения.

3.Активация виртуального окружения
Чтобы начать работу в новом окружении, активируйте его:
— На Windows:
myenv\Scripts\activate


— На macOS/Linux:
source myenv/bin/activate

После активации вы увидите название окружения слева от командной строки (например, (myenv)).

4.Установка зависимостей
Теперь вы можете устанавливать пакеты с помощью pip, и они будут доступны только внутри этого окружения:
pip install requests


5.Деактивация окружения
Когда работа завершена, деактивируйте окружение командой:
deactivate


➡️Пример использования
Предположим, мы создаем новый проект и хотим работать с библиотекой numpy. Вот как это можно сделать:
# Создаем виртуальное окружение
python -m venv project_env

# Активируем окружение
source project_env/bin/activate # macOS/Linux
project_env\Scripts\activate # Windows

# Устанавливаем необходимые пакеты
pip install numpy

# Проверяем установленные пакеты
pip list

# Запускаем Python и проверяем работу numpy
python
>>> import numpy as np
>>> array = np.array([1, 2, 3])
>>> print(array)
[1 2 3]

# Деактивируем окружение после работы
deactivate


➡️Практическое применение:

— Разработка нескольких проектов с разными версиями библиотек.

—Тестирование новых версий пакетов без риска повреждения основных проектов.

—Подготовка к деплою приложений с четко определенными зависимостями.


💡Виртуальные окружения — это важный инструмент для организации Python-проектов. Используйте их для создания чистых, изолированных рабочих пространств и избегайте проблем с зависимостями.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍106🔥4
👍5
Что выдаст код выше
Anonymous Quiz
13%
4
10%
6
19%
14
6%
22
4%
24
48%
Error
10🤓6🤔2🤨2
🤔Разбор

a —> "1" (станет текстовой единицей)

b —> вызовет функцию str, которую мы переопределили выше в коде самостоятельно передав туда 2.
Функция str, в свою очередь, попытается вернуть результат str(number * 2), но мы как раз таки str и переопределили —> она вызовет сама себя.

У нас получится рекурсия, которая будет работать бесконечно, Python выдаст блок-ошибку по глубине рекурсии.

ответ: ошибка


🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍176👏3
Forwarded from IT memer
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣37👍9😁62
✈️Matplotlib — это мощная библиотека Python для создания статических, анимированных и интерактивных визуализаций. Она позволяет строить различные типы графиков, таких как линейные графики, гистограммы, диаграммы и многое другое.
Matplotlib особенно полезен для анализа данных, презентаций и научных исследований.


➡️Пример создания графика:
Если мы хотим построить график зависимости y = x^2:
import matplotlib.pyplot as plt
import numpy as np

# Генерируем данные
x = np.linspace(-10, 10, 100) # 100 точек от -10 до 10
y = x ** 2

# Создаем график
plt.plot(x, y, label='y = x^2', color='blue', linewidth=2)

# Добавляем заголовок и метки осей
plt.title('График функции y = x^2')
plt.xlabel('X')
plt.ylabel('Y')

# Добавляем легенду
plt.legend()

# Отображаем график
plt.grid(True)
plt.show()


⬆️Будет построен график параболы с заголовком, метками осей и сеткой.

➡️Пример создания гистограммы:
Теперь давайте построим гистограмму распределения случайных чисел:
import matplotlib.pyplot as plt
import numpy as np

# Генерируем случайные данные
data = np.random.randn(1000)

# Создаем гистограмму
plt.hist(data, bins=30, color='green', edgecolor='black', alpha=0.7)

# Добавляем заголовок и метки осей
plt.title('Гистограмма распределения данных')
plt.xlabel('Значение')
plt.ylabel('Частота')

# Отображаем график
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.show()


⬆️Будет построена гистограмма с 30 столбцами, показывающая распределение данных.

➡️Почему Matplotlib полезен?

-- Широкие возможности: Matplotlib позволяет создавать практически любой тип графика.

- Кастомизация: Вы можете полностью контролировать внешний вид графиков (цвета, шрифты, размеры).

- Интеграция с другими библиотеками: Matplotlib отлично работает с Pandas, NumPy и SciPy.

💡Благодаря своей гибкости и мощным возможностям, Matplotlib является незаменимым инструментом для визуализации данных в Python.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍105🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Зачем покупать курсы, книги и искать информацию на древних форумах когда есть Python Power

В канале от Senior-разработчика уже можно посмотреть совершенно бесплатно:

- количество фишек и полезной инфы
- 52 прохождения собеса
- 117 рабочих скриптов
- слив топ 20 курсов
- 10 мастхев книг
- 144 задачи которые будут на вашем собесе
- гайд как получить первый оффер

🔒Открыли канал на 48 часов, успей залететь!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
✈️Scrapy — это мощный фреймворк Python для автоматизированного сбора данных с веб-сайтов. Он позволяет легко парсить HTML-страницы, извлекать нужную информацию и сохранять ее в удобном формате (CSV, JSON и т.д.). Scrapy особенно полезен для проектов, связанных с анализом данных, мониторингом цен или сбором информации из интернета.

➡️Пример создания простого скрапера
Допустим, мы хотим собрать названия статей с новостного сайта с помощью Scrapy:

В папке news_scraper/spiders/ создайте файл news_spider.py со следующим содержимым:
import scrapy

class NewsSpider(scrapy.Spider):
name = 'news'
start_urls = ['https://example.com/news'] # URL сайта для парсинга

def parse(self, response):
# Извлекаем заголовки статей
for article in response.css('div.article'):
yield {
'title': article.css('h2.title::text').get(),
'link': article.css('a::attr(href)').get(),
}

# Переход на следующую страницу
next_page = response.css('a.next-page::attr(href)').get()
if next_page is not None:
yield response.follow(next_page, self.parse)

Далее запускаем с помощью команды:
scrapy crawl news -o news.json

⬆️Результат будет сохранен в файл news.json.

➡️Преимущества использования Scrapy

- Масштабируемость: Scrapy может обрабатывать тысячи страниц одновременно, что делает его идеальным для крупных проектов.

- Гибкость: Библиотека поддерживает различные типы запросов (GET, POST), аутентификацию, куки и работу с JavaScript через интеграцию с Selenium.

- Автоматизация: Scrapy позволяет настроить периодические задачи для регулярного сбора данных.

- Экономия времени: Вместо ручного копирования информации, Scrapy автоматизирует процесс, позволяя сосредоточиться на анализе данных.

- Поддержка различных форматов: Собранные данные можно экспортировать в CSV, JSON, XML и другие форматы без дополнительных усилий.


➡️Заключение
Scrapy — это не просто инструмент для веб-скрапинга, это целая экосистема, которая помогает эффективно решать задачи сбора данных. Его гибкость, масштабируемость и автоматизация делают его незаменимым для разработчиков, работающих с большими объемами информации.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102🔥2
✈️Flask — это легковесный фреймворк Python для создания веб-приложений. Он предоставляет простой и гибкий инструментарий для разработки сайтов, API и других веб-сервисов. Flask особенно полезен для небольших проектов или прототипов, но может быть масштабирован до полноценных приложений.

➡️Пример создания простого веб-приложения

1. Установка Flask: Сначала установите библиотеку командой:
pip install flask


2. Создание приложения: Создайте файл app.py со следующим содержимым:
from flask import Flask, render_template, request

app = Flask(__name__)

# Главная страница
@app.route('/')
def home():
return "Добро пожаловать на мой сайт!"

# Страница приветствия
@app.route('/hello/<name>')
def hello(name):
return f"Привет, {name}!"

# Запуск приложения
if __name__ == '__main__':
app.run(debug=True)


3. Запуск приложения: Запустите скрипт командой:
python app.py


4. Тестирование: Откройте браузер и перейдите по адресу http://127.0.0.1:5000/. Вы увидите сообщение "Добро пожаловать на мой сайт!". Теперь попробуйте перейти по адресу http://127.0.0.1:5000/hello/Alice. Вы получите сообщение "Привет, Alice!".

🔎Как это работает?
- Определение маршрутов: Мы используем декоратор @app.route() для определения URL-адресов и соответствующих функций.

- Передача параметров: В примере /hello/<name> параметр name передается в функцию hello().

- Запуск сервера: Метод app.run() запускает локальный сервер для тестирования приложения.

➡️Если вы хотите углубиться в работу с Flask, вот несколько полезных ссылок:
Официальная документация Flask
Учебник по Flask

💡Заключение
Flask — это отличный выбор для создания веб-приложений в Python. Его простота и гибкость позволяют быстро реализовать идеи и протестировать их.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2
✈️smtplib — это стандартная библиотека Python для отправки электронных писем через SMTP-серверы. Она позволяет легко отправлять сообщения, включая текст, файлы и HTML-контент. Отправка email может быть полезна для автоматических уведомлений, напоминаний или регулярных отчетов.

➡️Пример отправки простого email:
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# Настройки отправителя
sender_email = "your_email@gmail.com"
receiver_email = "recipient_email@example.com"
password = "your_password" # Введите пароль или токен приложения

# Создание сообщения
message = MIMEMultipart()
message['From'] = sender_email
message['To'] = receiver_email
message['Subject'] = "Тестовое сообщение из Python"

# Текст письма
body = "Привет! Это тестовое сообщение, отправленное с помощью Python."
message.attach(MIMEText(body, 'plain'))

# Подключение к SMTP-серверу Gmail
try:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls() # Шифрование соединения
server.login(sender_email, password) # Авторизация

# Отправка письма
text = message.as_string()
server.sendmail(sender_email, receiver_email, text)
print("Сообщение успешно отправлено!")
except Exception as e:
print(f"Ошибка отправки: {e}")
finally:
server.quit()


💡Важно: Для работы с Gmail необходимо использовать токен приложения вместо обычного пароля (включите двухфакторную аутентификацию и сгенерируйте токен).

➡️Пример отправки email с вложением:
from email.mime.base import MIMEBase
from email import encoders

# Добавляем вложение
filename = "example.txt"
with open(filename, "rb") as attachment:
part = MIMEBase("application", "octet-stream")
part.set_payload(attachment.read())

encoders.encode_base64(part)
part.add_header(
"Content-Disposition",
f"attachment; filename= {filename}",
)

message.attach(part)

# Отправляем письмо как раньше
server.sendmail(sender_email, receiver_email, message.as_string())
print("Сообщение с вложением успешно отправлено!")


➡️Основные функции библиотеки:

1. Создание SMTP-объекта - для подключения к почтовому серверу.
2. Аутентификация - возможность входа с использованием логина и пароля.
3. Отправка почты - метод для отправки электронных писем с указанным содержимым.

📖 Официальная документация smtplib

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍5🔥5
✈️Telethon — это асинхронная библиотека Python для работы с Telegram API. Она позволяет взаимодействовать с Telegram на уровне API, предоставляя возможность отправлять сообщения, получать обновления, работать с чатами, группами и каналами.

➡️Пример создания простого Telegram-бота:

1. Установка Telethon: Сначала установите библиотеку командой:
pip install telethon


2. Создание приложения в Telegram: Перейдите в Telegram API и создайте новое приложение, чтобы получить API ID и API Hash.

3. Код бота: Создайте файл bot.py со следующим содержимым:
from telethon import TelegramClient, events

# Настройки вашего приложения
api_id = 'YOUR_API_ID' # Введите ваш API ID
api_hash = 'YOUR_API_HASH' # Введите ваш API Hash

# Создание клиента
client = TelegramClient('session_name', api_id, api_hash)

@client.on(events.NewMessage)
async def handler(event):
# Проверяем, является ли сообщение от пользователя
if event.is_private:
sender = await event.get_sender()
username = sender.username
message = event.text

# Ответ на сообщение
await event.respond(f"Привет, {username}! Ты написал: {message}")

# Запуск клиента
with client:
print("Бот запущен. Нажмите Ctrl+C для остановки.")
client.run_until_disconnected()

4. Запустите бота командой:
python bot.py

⬆️Готово, теперь бот будет отвечать на все личные сообщения, которые он получает.

🔎Как это работает?

- Создание клиента: Мы используем TelegramClient для подключения к Telegram API с помощью вашего API ID и API Hash.

- Обработка событий: Метод @client.on(events.NewMessage) регистрирует обработчик для новых сообщений.

- Отправка ответа: Метод await event.respond() позволяет отправить ответное сообщение пользователю.

💡Заключение
Telethon — это мощный инструмент для работы с Telegram. Он особенно полезен для создания ботов, автоматизации задач и анализа данных из Telegram.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍75🔥1
👍71
Что выдаст код выше
Anonymous Quiz
16%
Python
2%
JavaScript
51%
C++
16%
Python, JavaScript, C++
16%
Error
🤔5👍3🤓2🤨1
🤔Разбор

Метод .pop удаляет из списка элемент по индексу, если индекс был передан. У нас индекса передано не было —> он удалит последний элемент (как по умолчанию).

НО! Мы принтуем НЕ список, а результат удаления. Прикол в том, что .pop помимо удаления, еще и возвращает удаленный элемент. То есть в принте будет выведен элемент, который мы удалили —> 'C++'

p.s. когда-то уже была такая задача, люди, давно подписанные, обладающие хорошей памятью, уже не ведутся на такие уловки))


🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🤯74😁3👀1
Forwarded from IT memer
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🤣6🔥3😁1
✈️argparse — это стандартная библиотека Python, которая позволяет создавать программные интерфейсы командной строки с поддержкой различных параметров и опций. С ее помощью можно легко добавлять флаги, позиционные аргументы и необязательные параметры для скриптов. Библиотека особенно полезна для создания утилит или автоматизированных скриптов, которые запускаются из терминала.

➡️Пример просто скрипта, который принимает имя пользователя и выводит приветствие:
import argparse

# Создаем парсер
parser = argparse.ArgumentParser(description="Программа для приветствия пользователя")

# Добавляем аргумент
parser.add_argument('--name', type=str, required=True, help="Имя пользователя")

# Парсим аргументы
args = parser.parse_args()

# Выводим приветствие
print(f"Привет, {args.name}!")


Запустить скрипт:
python script.py --name Alice


⬆️Результат:
Привет, Alice!


➡️Пример с несколькими аргументами:
import argparse

# Создаем парсер
parser = argparse.ArgumentParser(description="Программа для сбора информации о пользователе")

# Добавляем аргументы
parser.add_argument('--name', type=str, required=True, help="Имя пользователя")
parser.add_argument('--age', type=int, default=18, help="Возраст пользователя")
parser.add_argument('--city', type=str, default="Не указан", help="Город проживания")

# Парсим аргументы
args = parser.parse_args()

# Выводим информацию
print(f"Имя: {args.name}")
print(f"Возраст: {args.age}")
print(f"Город: {args.city}")


Запустить скрипт:
python script.py --name Bob --age 25 --city NewYork


⬆️Результат:
Имя: Bob
Возраст: 25
Город: NewYork


🔎Практическое применение:

— Создание утилит для обработки файлов (например, конвертация форматов).

— Разработка автоматизированных скриптов для анализа данных.

— Написание командных инструментов для администрирования систем.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1042
✈️Что такое очистка последовательности?

Очистка последовательности — это процесс удаления нежелательных элементов из коллекции данных (например, списка, строки или множества). Это может включать удаление дубликатов, пустых значений, специальных символов или любых других ненужных элементов. Это особенно важно при работе с реальными данными, которые часто содержат шум или ошибки.


➡️Пример 1: Удаление дубликатов из списка:
# Исходный список
data = [1, 2, 2, 3, 4, 4, 5]

# Удаляем дубликаты с помощью множества
cleaned_data = list(set(data))

print("Исходный список:", data)
print("Очищенный список:", cleaned_data)

Результат:
Исходный список: [1, 2, 2, 3, 4, 4, 5]
Очищенный список: [1, 2, 3, 4, 5]


➡️Пример 2: Удаление пробельных символов из строки:
# Исходная строка
text = " Hello, World! This is a test. "

# Удаляем лишние пробелы
cleaned_text = ' '.join(text.split())

print("Исходная строка:", repr(text))
print("Очищенная строка:", repr(cleaned_text))

Результат:
Исходная строка: '  Hello,   World! This is a test.  '
Очищенная строка: 'Hello, World! This is a test.'


➡️Пример 3: Фильтрация элементов в списке:
# Исходный список
numbers = [3, -1, 0, 7, -5, 2]

# Фильтрация с помощью list comprehension
positive_numbers = [num for num in numbers if num > 0]

print("Исходный список:", numbers)
print("Очищенный список:", positive_numbers)

Результат:
Исходный список: [3, -1, 0, 7, -5, 2]
Очищенный список: [3, 7, 2]


➡️Заключение
Очистка последовательностей — это важный шаг в подготовке данных для анализа или обработки. который даёт чистоту данных, улучшение производительности и правильность результатов.

🐍 Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥43