Forwarded from Timur
🟢Подсчёт количества слов в строке на
📚Напишите функцию
строку и возвращает словарь, где ключами
являются слова из строки, а
значениями — количество их вхождений. Игнорируйте
регистр и знаки препинания.
👁🗨Пример:
«
»
#task #python
Python📚Напишите функцию
count_words(text), которая принимает строку и возвращает словарь, где ключами
являются слова из строки, а
значениями — количество их вхождений. Игнорируйте
регистр и знаки препинания.
👁🗨Пример:
«
"Hello, world! Hello Python world."»
{'hello': 2, 'world': 2, 'python': 1}#task #python
✅Инструмент
⚙️Mypy — инструмент для статической типизации Python-кода,
который помогает находить ошибки ещё до запуска программы.
Теперь Python становится чуть ближе к строгим языкам, как Java
или C#, но при этом остаётся таким же гибким!
⚒️Установка:
⚒️Как запустить:
🔍Источник:
💾GitHub: тут
🌐Docs: тут
#technology #python
«Mypy» ⚙️Mypy — инструмент для статической типизации Python-кода,
который помогает находить ошибки ещё до запуска программы.
Теперь Python становится чуть ближе к строгим языкам, как Java
или C#, но при этом остаётся таким же гибким!
⚒️Установка:
pip install mypy
⚒️Как запустить:
mypy <name_file>.py
🔍Источник:
💾GitHub: тут
🌐Docs: тут
#technology #python
Forwarded from Timur
✅Задача на
📚Вам будет предоставлена непустая строка.
Ваша задача - вернуть средние символы строки.
Если длина строки нечетная, верните средний символ.
Если длина строки четная, верните 2 средних символа.
Если строка пустая, то
👁🗨Пример №1:
«
»
👁🗨Пример №2:
«
»
#task #python
Python:📚Вам будет предоставлена непустая строка.
Ваша задача - вернуть средние символы строки.
Если длина строки нечетная, верните средний символ.
Если длина строки четная, верните 2 средних символа.
Если строка пустая, то
return ""👁🗨Пример №1:
«
"test"»
"es"👁🗨Пример №2:
«
"testing" »
't'#task #python
Forwarded from Timur
✅Задача по Python: Уникальные элементы с сохранением порядка
📚Напишите функцию
список, содержащий только уникальные элементы, сохраняя их порядок
появления.
👁🗨Пример №1:
«
» [1, 2, 3, 4, 5, -1, -2]
👁🗨Пример №2:
«
» [1, 2, 3, 4, 5]
#task #python
📚Напишите функцию
unique_order, которая принимает список и возвращает новый список, содержащий только уникальные элементы, сохраняя их порядок
появления.
👁🗨Пример №1:
«
[1, 2, 2, 3, 4, 3, 5, 1, -1, -2]» [1, 2, 3, 4, 5, -1, -2]
👁🗨Пример №2:
«
[1, 2, 2, 3, 4, 3, 5, 1]» [1, 2, 3, 4, 5]
#task #python
🐍Python 3.14
📖Свежий релиз
Вот кратко о самом важном
⚙️Главные нововведения:
✅ Отложенные аннотации — теперь аннотации не вычисляются сразу, а лениво (deferred evaluation).
✅ Поддержка нескольких интерпретаторов через модуль concurrent.interpreters — шаг к изоляции и параллелизму без GIL.
✅ Free-threaded mode улучшен — меньше накладных расходов, лучше производительность.
✅ Новые template-строки (t"...") — возвращают объект шаблона, а не обычную строку.
📦 Стандартная библиотека
✅ Новый модуль compression.zstd — полноценная поддержка Zstandard.
✅ В asyncio появился CLI для инспекции задач (python -m asyncio ps).
✅ Новый InterpreterPoolExecutor в concurrent.futures — параллелизм через подинтерпретаторы.
⚡️ Производительность
✅Tail-call оптимизации для внутренних C-функций (до +5 %).
✅GC стал быстрее и предсказуемее.
🧩 Итог
Python 3.14 - это про многопоточности без GIL, к ускорению и гибкости.
🔗Источник: тут
#python #news
📖Свежий релиз
Python 3.14 привнёс кучу улучшений, ускорений и интересных фич.Вот кратко о самом важном
⚙️Главные нововведения:
✅ Отложенные аннотации — теперь аннотации не вычисляются сразу, а лениво (deferred evaluation).
✅ Поддержка нескольких интерпретаторов через модуль concurrent.interpreters — шаг к изоляции и параллелизму без GIL.
✅ Free-threaded mode улучшен — меньше накладных расходов, лучше производительность.
✅ Новые template-строки (t"...") — возвращают объект шаблона, а не обычную строку.
📦 Стандартная библиотека
✅ Новый модуль compression.zstd — полноценная поддержка Zstandard.
✅ В asyncio появился CLI для инспекции задач (python -m asyncio ps).
✅ Новый InterpreterPoolExecutor в concurrent.futures — параллелизм через подинтерпретаторы.
⚡️ Производительность
✅Tail-call оптимизации для внутренних C-функций (до +5 %).
✅GC стал быстрее и предсказуемее.
🧩 Итог
Python 3.14 - это про многопоточности без GIL, к ускорению и гибкости.
🔗Источник: тут
#python #news
❤1🔥1
✅Первый и второй замечательный
придел с графиком на Python
⚙️Коротко о коде:
-
-
замечательного предела.
-
замечательного предела.
-
для функции первого и второго предела.
- для вычисления используем lib
- для отрисовки графиков используем lib
#algorithms #python
придел с графиком на Python
⚙️Коротко о коде:
-
class Limit - просто объект для абстракции задачи.-
method first_wonderful_limit - вычисление первого замечательного предела.
-
method second_wonderful_limit - вычисление второго замечательного предела.
-
private method _render - служит для отрисовки графиковдля функции первого и второго предела.
- для вычисления используем lib
numpy,numpy - мощная математическая библиотека.- для отрисовки графиков используем lib
matplotlib.pip install numpy
pip install matplotlib
#algorithms #python
✅Задача для Python
📚Дан массив целых чисел temperatures, где каждая температура соответствует
определённому дню.
⚙️Нужно вернуть новый массив answer, где каждое значение показывает, сколько дней нужно
подождать до более высокой температуры. Если такого дня не будет, записывается 0.
💡Подсказка:
Я нашёл два варианта решения задачи. Первый вариант O(n**2) это двойной цикл for.
Второй вариант это использование стека, там тоже есть циклы, но сложность алгоритма
O(n), что уже лучше. Ну само собой я использовал второй вариант решения по очевидным
причинам.
👁🗨Пример 1:
«
»
👁🗨Пример 2:
«
»
#task #python
«Daily Temperatures»📚Дан массив целых чисел temperatures, где каждая температура соответствует
определённому дню.
⚙️Нужно вернуть новый массив answer, где каждое значение показывает, сколько дней нужно
подождать до более высокой температуры. Если такого дня не будет, записывается 0.
💡Подсказка:
Второй вариант это использование стека, там тоже есть циклы, но сложность алгоритма
O(n), что уже лучше. Ну само собой я использовал второй вариант решения по очевидным
причинам.
👁🗨Пример 1:
«
temperatures = [73,74,75,71,79]»
[1,1,2,1,0]👁🗨Пример 2:
«
temperatures = [30,60,90]»
[1,1,0]#task #python
👍2
📕
💡BFS — поиск в ширину — это алгоритм обхода графа, который сначала посещает всех соседей вершины, затем соседей этих соседей, и так далее.
⚙️ Как работает BFS
1. Берём любую стартовую вершину.
2. Добавляем её в очередь.
3. Пока очередь не пуста:
- достаём вершину из очереди,
- посещаем всех её соседей,
- непосещённых соседей добавляем в очередь.
✅Релизация на python:
#algorithm #python
Алгоритм BFS (Breadth-First Search)💡BFS — поиск в ширину — это алгоритм обхода графа, который сначала посещает всех соседей вершины, затем соседей этих соседей, и так далее.
⚙️ Как работает BFS
1. Берём любую стартовую вершину.
2. Добавляем её в очередь.
3. Пока очередь не пуста:
- достаём вершину из очереди,
- посещаем всех её соседей,
- непосещённых соседей добавляем в очередь.
✅Релизация на python:
from collections import deque
def bfs(graph, start):
visited = set()
queue = deque([start])
order = [] # порядок обхода
while queue:
vertex = queue.popleft()
if vertex not in visited:
visited.add(vertex)
order.append(vertex)
for neighbor in graph[vertex]:
if neighbor not in visited:
queue.append(neighbor)
return order
graph = {
'A': ['B', 'C'],
'B': ['D', 'E'],
'C': ['F'],
'D': [],
'E': ['F'],
'F': []
}
print(bfs(graph, 'A'))
#algorithm #python
🔹 DFS (
💡Идея:
Исследуем граф «вглубь», пока не достигнем конца пути, затем возвращаемся.
Нужно хранить посещённые вершины (visited).
🔧Применение:
Поиск пути, топологическая сортировка, компоненты связности.
⚙️Рекурсивноя реализвация:
⚙️Итеративно через стек:
✅Вывод:
#algorithm #python
Depth-First Search) — поиск в глубину в графе💡Идея:
Исследуем граф «вглубь», пока не достигнем конца пути, затем возвращаемся.
Нужно хранить посещённые вершины (visited).
🔧Применение:
Поиск пути, топологическая сортировка, компоненты связности.
⚙️Рекурсивноя реализвация:
graph = {
'A': ['B','C'], 'B': ['D','E'], 'C': ['F'],
'D': [], 'E': ['F'], 'F': []
}
def dfs(graph, start, visited=None):
if visited is None: visited = set()
visited.add(start)
print(start, end=' ')
for neighbor in graph[start]:
if neighbor not in visited:
dfs(graph, neighbor, visited)
dfs(graph, 'A')⚙️Итеративно через стек:
def dfs_iter(graph, start):
visited, stack = set(), [start]
while stack:
v = stack.pop()
if v not in visited:
print(v, end=' ')
visited.add(v)
stack.extend(reversed(graph[v]))
dfs_iter(graph, 'A')
✅Вывод:
A B D E F C
#algorithm #python