🤔3
any()
и all()
— проверка условий для коллекцийФункции
any()
и all()
позволяют проверить, соответствуют ли элементы коллекции какому-либо условию.🟢 any() возвращает True, если хотя бы один элемент — истинный🟢 all() возвращает True, если все элементы — истинные
scores = [80, 90, 75, 0]
print(any(scores)) # True — есть хотя бы одно ненулевое значение
print(all(scores)) # False — есть 0
Please open Telegram to view this post
VIEW IN TELEGRAM
Оператор
:=
, прозванный "моржовым" (walrus operator), позволяет присваивать значение переменной прямо внутри выражения — например, в условии if
или while
.data = input("Введите имя (или leave): ")
while (name := data) != "leave":
print(f"Привет, {name}!")
data = input("Введите имя (или leave): ")
Please open Telegram to view this post
VIEW IN TELEGRAM
Класс
Counter
из модуля collections
— это удобный способ посчитать, сколько раз каждый элемент встречается в последовательности.from collections import Counter
words = ["яблоко", "банан", "яблоко", "вишня", "банан", "банан"]
counted = Counter(words)
print(counted)
Counter({'банан': 3, 'яблоко': 2, 'вишня': 1})
.most_common()
, сложение/вычитание счётчиков и другие операции.Очень полезен при анализе текста, логов или при решении задач на частоту.
Please open Telegram to view this post
VIEW IN TELEGRAM
strip()
в Python и когда его применять?Метод
strip()
удаляет начальные и конечные пробелы (а также другие переданные символы) из строки. Это удобно для очистки ввода, сравнения данных и предобработки текста.user_input = " hello world "
cleaned = user_input.strip()
print(cleaned)
# ➜ "hello world"
strip()
убирает лишние пробелы по краям строки, оставляя только значимый текст.strip() удобно использовать при чтении из файлов, работе с формами, разборе CSV/JSON и валидации пользовательского ввода. Также существуют .lstrip() и .rstrip() — для удаления только слева или справа. Метод делает работу с текстом точной и предсказуемой
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет следующий код?
Anonymous Quiz
12%
[1] и [2]
61%
[1] и [1, 2]
24%
[1] и [2] (в новом списке)
3%
Ошибка из-за повторного использования y
Метод
setdefault()
используется для получения значения по ключу из словаря, одновременно создавая его, если ключа ещё нет.data = {}
data.setdefault("users", []).append("Анна")
data.setdefault("users", []).append("Борис")
print(data)
{'users': ['Анна', 'Борис']}
if key not in dict
.Please open Telegram to view this post
VIEW IN TELEGRAM
Объект
slice
позволяет создавать диапазоны с шагом, которые можно применять к спискам, строкам и другим последовательностям.text = "Программирование"
s = slice(0, 10, 2)
print(text[s]) # Погрмр
slice(start, stop, step)
— аналог среза text[0:10:2]
, но его можно передавать как переменную.Полезно, когда срез нужно вычислять динамически или передавать в функцию
Please open Telegram to view this post
VIEW IN TELEGRAM
Ответ:
Anonymous Quiz
17%
1
42%
1\ncleaning up
17%
1\n2\ncleaning up
25%
1, а cleaning up не выведется вообще
Модуль
dataclasses
позволяет быстро описывать классы-хранилища данных без лишнего шаблонного кода.from dataclasses import dataclass
@dataclass
class User:
name: str
age: int = 0
u = User("Анна", 25)
print(u) # User(name='Анна', age=25)
•
Автоматически создаёт __init__
, __repr__
, __eq__
•
Поддерживает значения по умолчанию•
Можно добавлять методы, как в обычном классеИдеально подходит для структурированных объектов — например, при работе с API, конфигами или моделями
Please open Telegram to view this post
VIEW IN TELEGRAM
Функция
cycle()
из модуля itertools
позволяет бесконечно перебирать элементы последовательности по кругу.from itertools import cycle
colors = ["red", "green", "blue"]
for i, color in zip(range(7), cycle(colors)):
print(color)
red
green
blue
red
green
blue
red
Работает с любыми итерируемыми объектами
Please open Telegram to view this post
VIEW IN TELEGRAM