Python Learning
34.6K subscribers
1.91K photos
8 videos
7 files
913 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://yangx.top/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
👩‍💻 Задача по Python: Подсчёт частоты символов в строке

Напишите функцию, которая принимает строку и возвращает словарь, где ключи — это символы строки, а значения — количество их вхождений.

Пример:

result = count_char_frequency("hello world")
print(result)
# Ожидаемый результат:
# {'h': 1, 'e': 1, 'l': 3, 'o': 2, ' ': 1, 'w': 1, 'r': 1, 'd': 1}


Решение задачи на картинке ☝️

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤‍🔥2
Wooey

Wooey — это библиотека Python, которая позволяет создавать простые веб-интерфейсы для ваших скриптов командной строки. Она является мощным инструментом для повышения доступности, улучшения удобства использования и сбора данных.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥2
Что будет выведено при выполнении кода?

Пояснение
⬇️
Класс Counter реализует интерфейсы __iter__ и __next__, превращая объект в итератор. Итератор начинает с 1 и увеличивает значение на каждом шаге, пока не достигнет 3. После этого выбрасывается исключение StopIteration, которое завершает цикл.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥3
👍17🤔5🏆4❤‍🔥1😢1🍾1
⚙️ setattr()

В Python функция setattr() позволяет динамически устанавливать значение атрибута объекта. Это полезно, если имя атрибута известно только во время выполнения программы.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤‍🔥2
⚙️ isinstance()

В Python функция isinstance() проверяет, является ли объект экземпляром указанного класса или его подкласса. Это удобно для проверки типов во время выполнения.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤‍🔥1
⚙️ eval()

В Python функция eval() выполняет строку как Python-код. Это мощный инструмент для динамического выполнения выражений, но его следует использовать с осторожностью.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18😱6❤‍🔥2
😁

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
😁61👍8❤‍🔥3
Вопрос на собеседовании

Что такое контекстные переменные (contextvars) в Python, как они работают и где применяются?

Ответ ⬇️
Контекстные переменные (contextvars) — это механизм, введённый в Python 3.7, который позволяет хранить и изолировать данные для каждого потока выполнения. Они особенно полезны в асинхронных приложениях, где глобальные переменные могут быть небезопасны из-за возможного пересечения данных между задачами. В отличие от локальных переменных потоков (threading.local), contextvars работают корректно в асинхронных средах, таких как asyncio.

Пример использования ⚙️
import contextvars
import asyncio

# Создаём контекстную переменную
user_context = contextvars.ContextVar('user')

async def task(name):
user_context.set(name) # Устанавливаем значение
await asyncio.sleep(1) # Эмуляция асинхронной задачи
print(f"Текущий пользователь: {user_context.get()}")

async def main():
await asyncio.gather(task("


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥5
⚙️ collections.deque

В Python класс collections.deque предоставляет двустороннюю очередь с эффективным добавлением и удалением элементов с обоих концов. Это полезно для реализации очередей, стеков и буферов.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤‍🔥5
⚙️ re.findall()

В Python функция re.findall() из модуля re находит все совпадения с заданным регулярным выражением в строке и возвращает их в виде списка. Это удобно для извлечения данных из текста.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤‍🔥1🔥1
Что будет выведено при выполнении кода?

Пояснение
⬇️
Список lst — изменяемый тип, и изменения внутри функции влияют на оригинальный объект, поэтому 4 добавляется к списку. Переменная n — неизменяемый тип (int), поэтому увеличение num на 1 не изменяет оригинальный n.


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
👍10❤‍🔥5🏆4
⚙️ collections.ChainMap

В Python класс collections.ChainMap объединяет несколько словарей в одну структуру, позволяя искать ключи сразу во всех словарях. Это удобно для объединения настроек или конфигураций.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥6🏆2
⚙️ itertools.chain()

Функция itertools.chain() позволяет объединить несколько итерируемых объектов в один. Это полезно, когда нужно работать с несколькими списками или другими коллекциями без явной конкатенации.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤‍🔥8🏆2
😁

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥45😁33😢10👍2🏆2
Вопрос на собеседовании

Что такое dataclass в Python, как работает параметр init=False и зачем он нужен?

Ответ ⬇️
dataclass — это декоратор из модуля dataclasses, который упрощает создание классов для хранения данных, автоматически генерируя методы, такие как __init__, __repr__, и __eq__. Параметр init=False позволяет исключить атрибут из автоматически сгенерированного конструктора __init__. Это полезно для атрибутов, которые не должны передаваться при создании экземпляра, например, для вычисляемых значений или внутренних данных.

Пример использования ⚙️
from dataclasses import dataclass, field

@dataclass
class Product:
name: str
price: float
discount: float = field(init=False) # Исключаем из __init__

def __post_init__(self):
self.discount = self.price * 0.1 # Вычисляем скидку после инициализации

# Создание экземпляра
item = Product(name="Laptop", price=1000)
print(item) # Product(name='Laptop', price=1000, discount=100.0)


Python Learning
👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤‍🔥1
✅️ GitHub теперь в Telegram!

Подписывайтесь: @GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿6👍4
⚙️ difflib.get_close_matches()

В Python функция difflib.get_close_matches() находит наиболее похожие строки из списка на основе заданного шаблона. Это удобно для реализации поиска, проверки орфографии или подсказок для ввода.

Python Learning 👩‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥1
PyOxidizer

PyOxidizer — это инструмент, позволяющий упаковать Python-проект в единый исполняемый файл, включающий интерпретатор Python, все необходимые библиотеки и ресурсы. Это позволяет запускать ваши приложения без необходимости предварительной установки Python или каких-либо зависимостей.

Python Learning 👩‍💻
👍23🍾6😱2❤‍🔥1