🔎 Фильтрация данных с filter()
Если нужно отфильтровать элементы списка по какому-то условию, используйте filter(). Эта функция возвращает только те элементы, которые соответствуют заданному критерию.
💡 Пример использования:
Результат:
🔥 Когда использовать?
Когда нужно убрать ненужные элементы из списка
Работает быстрее, чем for + if
Если нужно отфильтровать элементы списка по какому-то условию, используйте filter(). Эта функция возвращает только те элементы, которые соответствуют заданному критерию.
💡 Пример использования:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)
Результат:
[2, 4, 6, 8, 10]
🔥 Когда использовать?
Когда нужно убрать ненужные элементы из списка
Работает быстрее, чем for + if
🔥1
🎭 "Распаковка" переменных с * и **
В Python можно легко разбивать и собирать элементы с помощью * и **!
💡 Пример распаковки списка:
Результат:
💡 Пример сбора остатка элементов:
🔥 Где использовать?
Удобно для работы со списками переменной длины
Позволяет передавать параметры в функции (*args, **kwargs)
В Python можно легко разбивать и собирать элементы с помощью * и **!
💡 Пример распаковки списка:
numbers = [1, 2, 3]
a, b, c = numbers # Разбиваем список на переменные
print(a, b, c)
Результат:
1 2 3
💡 Пример сбора остатка элементов:
first, *middle, last = [10, 20, 30, 40, 50]
print(first) # 10
print(middle) # [20, 30, 40]
print(last) # 50
🔥 Где использовать?
Удобно для работы со списками переменной длины
Позволяет передавать параметры в функции (*args, **kwargs)
🔥1
🚀 set() — убираем дубликаты из списка за одну строку!
В Python есть быстрый способ удалить дубликаты из списка — просто преобразовать его в set(), а затем обратно в list().
💡 Пример использования:
Результат:
🔥 Плюсы метода:
Очень быстрый способ удаления дубликатов
Порядок элементов не сохраняется, но можно обойти это с dict.fromkeys()
💡 Пример с сохранением порядка:
Результат:
В Python есть быстрый способ удалить дубликаты из списка — просто преобразовать его в set(), а затем обратно в list().
💡 Пример использования:
numbers = [1, 2, 2, 3, 4, 4, 5, 6, 6]
unique_numbers = list(set(numbers))
print(unique_numbers)
Результат:
[1, 2, 3, 4, 5, 6]
🔥 Плюсы метода:
Очень быстрый способ удаления дубликатов
Порядок элементов не сохраняется, но можно обойти это с dict.fromkeys()
💡 Пример с сохранением порядка:
numbers = [1, 2, 2, 3, 4, 4, 5, 6, 6]
unique_numbers = list(dict.fromkeys(numbers))
print(unique_numbers)
Результат:
[1, 2, 3, 4, 5, 6]
🎲 Как перемешать список? Используем random.shuffle()!
Если нужно случайно перемешать элементы списка, используйте random.shuffle(). Это удобно в играх, тестах или генерации случайных последовательностей.
💡 Пример использования:
Результат (пример):
🔥 Когда это полезно?
Перемешивание карт в игре 🃏
Рандомизация вопросов в тесте
Перемешивание данных перед ML-моделью
Теперь ваш Python-код станет ещё интереснее и мощнее! 🚀
Если нужно случайно перемешать элементы списка, используйте random.shuffle(). Это удобно в играх, тестах или генерации случайных последовательностей.
💡 Пример использования:
import random
cards = ["♠ A", "♣ K", "♦ Q", "♥ J"]
random.shuffle(cards)
print(cards)
Результат (пример):
['♣ K', '♥ J', '♦ Q', '♠ A']
🔥 Когда это полезно?
Перемешивание карт в игре 🃏
Рандомизация вопросов в тесте
Перемешивание данных перед ML-моделью
Теперь ваш Python-код станет ещё интереснее и мощнее! 🚀
🔥2
⚡ Слияние словарей в одну строку (| в Python 3.9+)
Раньше, чтобы объединить два словаря, приходилось использовать .update() или dict(). Но в Python 3.9+ появился удобный оператор |!
💡 Пример использования:
Результат:
🔥 Что важно знать?
Если ключи совпадают, берётся значение из второго словаря
Работает только в Python 3.9+
💡 А если нужно обновить первый словарь, а не создавать новый?
Теперь dict в Python стал ещё удобнее! 🚀
Раньше, чтобы объединить два словаря, приходилось использовать .update() или dict(). Но в Python 3.9+ появился удобный оператор |!
💡 Пример использования:
dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
merged_dict = dict1 | dict2 # Новый способ объединения словарей
print(merged_dict)
Результат:
{'a': 1, 'b': 3, 'c': 4}
🔥 Что важно знать?
Если ключи совпадают, берётся значение из второго словаря
Работает только в Python 3.9+
💡 А если нужно обновить первый словарь, а не создавать новый?
dict1 |= dict2
print(dict1)
Теперь dict в Python стал ещё удобнее! 🚀
🔥4
📏 Как узнать длину самой длинной строки в списке?
Если у вас есть список строк, и вам нужно найти самую длинную, можно сделать это в одну строку!
💡 Пример использования:
Результат:
🔥 Как это работает?
map(len, words) применяет len() ко всем строкам
max() выбирает самое большое значение
💡 Хотите узнать самую длинную строку?
Результат:
Теперь находить самые длинные строки в списках проще простого! 🎯
Если у вас есть список строк, и вам нужно найти самую длинную, можно сделать это в одну строку!
💡 Пример использования:
words = ["apple", "banana", "cherry", "blueberry"]
longest_length = max(map(len, words))
print(longest_length)
Результат:
9
🔥 Как это работает?
map(len, words) применяет len() ко всем строкам
max() выбирает самое большое значение
💡 Хотите узнать самую длинную строку?
longest_word = max(words, key=len)
print(longest_word)
Результат:
blueberry
Теперь находить самые длинные строки в списках проще простого! 🎯
🔥4
🎭 Работа с "невидимыми" символами через strip()
При обработке строк бывает нужно удалить пробелы, переводы строк и другие невидимые символы. В Python это легко сделать с помощью strip(), lstrip() и rstrip().
💡 Пример использования:
Результат:
💡 Можно убирать и другие символы, не только пробелы!
Результат:
Теперь ваш текст всегда будет чистым! 🧼🚀
При обработке строк бывает нужно удалить пробелы, переводы строк и другие невидимые символы. В Python это легко сделать с помощью strip(), lstrip() и rstrip().
💡 Пример использования:
text = " Привет, мир! \n"
clean_text = text.strip() # Убираем пробелы и переводы строк по краям
print(f"'{clean_text}'") # Проверим результат
Результат:
'Привет, мир!'
🔥 Дополнительно:
lstrip() — убирает пробелы только слева
rstrip() — убирает пробелы только справа
💡 Можно убирать и другие символы, не только пробелы!
text = "---Python---"
clean_text = text.strip("-") # Убираем все "-"
print(clean_text)
Результат:
Python
Теперь ваш текст всегда будет чистым! 🧼🚀
🔥2
📦 Как узнать все методы и атрибуты объекта? dir() в помощь!
Иногда нужно посмотреть, какие методы и атрибуты есть у объекта, особенно если вы работаете с новым модулем или библиотекой.
💡 Пример использования:
Результат (частично):
🔥 Полезно, когда:
Вы изучаете новый класс или модуль
Хотите узнать, какие методы доступны у объекта
💡 Хотите посмотреть только методы без служебных атрибутов?
Иногда нужно посмотреть, какие методы и атрибуты есть у объекта, особенно если вы работаете с новым модулем или библиотекой.
💡 Пример использования:
print(dir(str)) # Выведет все методы строк
Результат (частично):
['capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', ...]
🔥 Полезно, когда:
Вы изучаете новый класс или модуль
Хотите узнать, какие методы доступны у объекта
💡 Хотите посмотреть только методы без служебных атрибутов?
methods = [m for m in dir(str) if not m.startswith("__")]
print(methods)
🔄 Как перевернуть строку или список в одну строку?
В Python можно развернуть строку или список с помощью срезов [::-1]. Это быстрый и лаконичный способ!
💡 Переворачиваем строку:
Результат:
💡 Переворачиваем список:
Результат:
🔥 Почему это круто?
Работает быстро и без циклов
Можно использовать для проверки палиндромов
💡 Пример проверки палиндрома:
В Python можно развернуть строку или список с помощью срезов [::-1]. Это быстрый и лаконичный способ!
💡 Переворачиваем строку:
text = "Python"
reversed_text = text[::-1]
print(reversed_text)
Результат:
nohtyP
💡 Переворачиваем список:
pythonКопироватьРедактироватьnumbers = [1, 2, 3, 4, 5]
reversed_numbers = numbers[::-1]
print(reversed_numbers)
Результат:
[5, 4, 3, 2, 1]
🔥 Почему это круто?
Работает быстро и без циклов
Можно использовать для проверки палиндромов
💡 Пример проверки палиндрома:
word = "level"
is_palindrome = word == word[::-1]
print(is_palindrome) # True
🔥2
🎯 Используем any() и all() для проверки условий в списке
Функции any() и all() позволяют быстро проверить выполняется ли хотя бы одно или все условия в списке.
💡 Пример использования any() (хотя бы одно True):
Результат:
💡 Пример использования all() (все True):
Результат:
🔥 Когда это полезно?
Упрощает проверки в if (без циклов)
Работает с любыми итерируемыми объектами
Теперь ваш код будет чище и эффективнее! 🚀
Функции any() и all() позволяют быстро проверить выполняется ли хотя бы одно или все условия в списке.
💡 Пример использования any() (хотя бы одно True):
numbers = [0, 0, 1, 0]
if any(numbers):
print("В списке есть хотя бы одно ненулевое число!")
Результат:
В списке есть хотя бы одно ненулевое число!
💡 Пример использования all() (все True):
numbers = [1, 2, 3, 4, 5]
if all(n > 0 for n in numbers):
print("Все числа положительные!")
Результат:
Все числа положительные!
🔥 Когда это полезно?
Упрощает проверки в if (без циклов)
Работает с любыми итерируемыми объектами
Теперь ваш код будет чище и эффективнее! 🚀
🔥1
🕵️ Как узнать, сколько раз встречается элемент в списке? Counter в помощь!
Если вам нужно подсчитать количество повторений элементов в списке, используйте collections.Counter. Это удобный способ работы со словарями частот.
💡 Пример использования:
Результат:
🔥 Зачем это нужно?
Анализ частот слов в тексте
Поиск самых популярных элементов
Оптимизация работы со списками
💡 Как найти самый частый элемент?
Если вам нужно подсчитать количество повторений элементов в списке, используйте collections.Counter. Это удобный способ работы со словарями частот.
💡 Пример использования:
from collections import Counter
numbers = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted = Counter(numbers)
print(counted)
Результат:
Counter({4: 4, 3: 3, 2: 2, 1: 1})
🔥 Зачем это нужно?
Анализ частот слов в тексте
Поиск самых популярных элементов
Оптимизация работы со списками
💡 Как найти самый частый элемент?
most_common = counted.most_common(1) # [(4, 4)]
print(most_common)
🔥2
🔢 Как создать список чисел без циклов? range() + list()!
Хотите создать список чисел от 1 до 10 в одну строку? Используйте range() и list()!
💡 Пример использования:
Результат:
🔥 Дополнительно:
💡 Создадим список квадратов чисел:
Результат:
Хотите создать список чисел от 1 до 10 в одну строку? Используйте range() и list()!
💡 Пример использования:
numbers = list(range(1, 11))
print(numbers)
Результат:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
🔥 Дополнительно:
range(1, 11, 2) — шаг 2 (1, 3, 5...)
range(10, 0, -1) — обратный порядок (10, 9, 8...)
💡 Создадим список квадратов чисел:
squares = [x**2 for x in range(1, 11)]
print(squares)
Результат:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
Теперь создание списков стало проще и элегантнее! 🚀
🔥1
🔄 Как развернуть словарь (ключи <-> значения)?
Иногда нужно поменять местами ключи и значения в словаре. В Python это делается в одну строку с помощью dictionary comprehension!
💡 Пример использования:
Результат:
🔥 Где это полезно?
При обработке данных (например, если значения уникальны, можно быстро искать по ним)
В задачах, где нужно изменить представление данных
💡 А если в значениях есть дубликаты?
Результат:
Теперь у нас ключи с несколькими значениями в списках! 🔥
Иногда нужно поменять местами ключи и значения в словаре. В Python это делается в одну строку с помощью dictionary comprehension!
💡 Пример использования:
data = {"apple": 1, "banana": 2, "cherry": 3}
reversed_data = {v: k for k, v in data.items()}
print(reversed_data)
Результат:
{1: 'apple', 2: 'banana', 3: 'cherry'}
🔥 Где это полезно?
При обработке данных (например, если значения уникальны, можно быстро искать по ним)
В задачах, где нужно изменить представление данных
💡 А если в значениях есть дубликаты?
data = {"a": 1, "b": 2, "c": 1}
reversed_data = {}
for key, value in data.items():
reversed_data.setdefault(value, []).append(key)
print(reversed_data)
Результат:
{1: ['a', 'c'], 2: ['b']}
Теперь у нас ключи с несколькими значениями в списках! 🔥
🎲 Как выбрать случайный элемент из списка? random.choice()!
Вместо сложных random.randint() + индексов, можно использовать random.choice() для быстрого выбора случайного элемента!
💡 Пример использования:
Результат (пример):
💡 Пример выбора нескольких случайных элементов:
Теперь случайный выбор в Python стал проще! 🚀
Вместо сложных random.randint() + индексов, можно использовать random.choice() для быстрого выбора случайного элемента!
💡 Пример использования:
import random
fruits = ["🍎 яблоко", "🍌 банан", "🍒 вишня", "🍉 арбуз"]
random_fruit = random.choice(fruits)
print(random_fruit)
Результат (пример):
🍌 банан
🔥 Дополнительно:
random.choices() — выбирает несколько случайных элементов (с повторениями)
random.sample() — выбирает уникальные элементы
💡 Пример выбора нескольких случайных элементов:
random_fruits = random.choices(fruits, k=2)
print(random_fruits)
Теперь случайный выбор в Python стал проще! 🚀
🔥1
🔢 Как быстро создать список чисел? range() + list()!
Если вам нужно создать список чисел от X до Y, не обязательно писать циклы! Используйте range().
💡 Пример использования:
Результат:
🔥 Дополнительные возможности:
range(1, 11, 2) — создаст список [1, 3, 5, 7, 9] (с шагом 2)
range(10, 0, -1) — создаст список [10, 9, 8, ..., 1] (обратный порядок)
💡 Пример использования range() в for:
Теперь создавать последовательности проще! 🚀
Если вам нужно создать список чисел от X до Y, не обязательно писать циклы! Используйте range().
💡 Пример использования:
numbers = list(range(1, 11)) # Числа от 1 до 10
print(numbers)
Результат:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
🔥 Дополнительные возможности:
range(1, 11, 2) — создаст список [1, 3, 5, 7, 9] (с шагом 2)
range(10, 0, -1) — создаст список [10, 9, 8, ..., 1] (обратный порядок)
💡 Пример использования range() в for:
for i in range(5):
print(f"🔥 Итерация {i}")
Теперь создавать последовательности проще! 🚀
👍1🔥1
📝 Как соединить список строк в одну строку? join() в помощь!
Вместо сложных циклов используйте join() для быстрого объединения списка строк в одну.
💡 Пример использования:
Результат:
🔥 Дополнительные возможности:
", ".join(words) → объединяет с запятой
"".join(words) → объединяет без пробелов
💡 Пример создания CSV-строки:
Результат:
Теперь работа со строками стала удобнее! ✨
Вместо сложных циклов используйте join() для быстрого объединения списка строк в одну.
💡 Пример использования:
ьwords = ["Python", "—", "лучший", "язык!"]
sentence = " ".join(words)
print(sentence)
Результат:
Python — лучший язык!
🔥 Дополнительные возможности:
", ".join(words) → объединяет с запятой
"".join(words) → объединяет без пробелов
💡 Пример создания CSV-строки:
data = ["Имя", "Возраст", "Город"]
csv_row = ";".join(data)
print(csv_row)
Результат:
Имя;Возраст;Город
Теперь работа со строками стала удобнее! ✨
🔍 Как проверить тип переменной? type() vs isinstance()
В Python есть два способа узнать, какого типа переменная:
1️⃣ type() показывает точный тип объекта.
2️⃣ isinstance() проверяет, является ли объект экземпляром класса (включая наследников).
💡 Пример использования type():
💡 Пример использования isinstance():
🔥 Когда использовать isinstance()?
Когда важно учитывать наследование классов.
Когда нужно проверить несколько типов сразу.
⚠ Важно: type(x) == int не учитывает наследников, а isinstance(x, int) — учитывает.
В Python есть два способа узнать, какого типа переменная:
1️⃣ type() показывает точный тип объекта.
2️⃣ isinstance() проверяет, является ли объект экземпляром класса (включая наследников).
💡 Пример использования type():
x = 42
print(type(x)) # <class 'int'>
💡 Пример использования isinstance():
x = 42
print(isinstance(x, int)) # True
print(isinstance(x, (float, int))) # True (проверка нескольких типов)
🔥 Когда использовать isinstance()?
Когда важно учитывать наследование классов.
Когда нужно проверить несколько типов сразу.
⚠ Важно: type(x) == int не учитывает наследников, а isinstance(x, int) — учитывает.
❤1🔥1
🧙♂️ Как найти самый частый элемент в списке? Counter()!
Если нужно найти, какой элемент встречается чаще всего, используйте collections.Counter().
💡 Пример использования:
Результат:
🔥 Как это работает?
Counter(numbers) создаёт словарь частот.
most_common(1) возвращает самый частый элемент и его количество.
💡 А если нужно несколько самых частых элементов?
Если нужно найти, какой элемент встречается чаще всего, используйте collections.Counter().
💡 Пример использования:
from collections import Counter
numbers = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counter = Counter(numbers)
most_common = counter.most_common(1) # Найти самый частый элемент
print(most_common)
Результат:
[(4, 4)]
🔥 Как это работает?
Counter(numbers) создаёт словарь частот.
most_common(1) возвращает самый частый элемент и его количество.
💡 А если нужно несколько самых частых элементов?
print(counter.most_common(2)) # Два самых частых числа
👍1🔥1
🔁 Как "распаковать" список в переменные?
В Python можно легко распаковать элементы списка или кортежа прямо в переменные — это удобно и читаемо!
💡 Пример использования:
Результат:
🔥 Дополнительно:
Можно использовать * для сбора "лишних" элементов:
Такой приём отлично подходит для разбора аргументов, строк, данных из API и др. 📦
В Python можно легко распаковать элементы списка или кортежа прямо в переменные — это удобно и читаемо!
💡 Пример использования:
data = ["Alice", 25, "Developer"]
name, age, profession = data
print(name)
print(age)
print(profession)
Результат:
Alice
25
Developer
🔥 Дополнительно:
Можно использовать * для сбора "лишних" элементов:
a, *middle, b = [1, 2, 3, 4, 5]
print(a) # 1
print(middle) # [2, 3, 4]
print(b) # 5
Такой приём отлично подходит для разбора аргументов, строк, данных из API и др. 📦
💥 Как избежать ошибки при делении на 0? Используем try/except!
При делении на ноль Python вызывает ошибку ZeroDivisionError. Чтобы программа не "падала", можно использовать try/except.
💡 Пример использования:
Результат:
🔥 Плюсы try/except:
Позволяет обрабатывать ошибки без краша программы
Можно обрабатывать разные типы ошибок по-разному
💡 Пример с несколькими типами ошибок:
Теперь ваш код не боится ошибок — он просто идёт дальше 😎💪
При делении на ноль Python вызывает ошибку ZeroDivisionError. Чтобы программа не "падала", можно использовать try/except.
💡 Пример использования:
try:
result = 10 / 0
except ZeroDivisionError:
result = "На ноль делить нельзя!"
print(result)
Результат:
На ноль делить нельзя!
🔥 Плюсы try/except:
Позволяет обрабатывать ошибки без краша программы
Можно обрабатывать разные типы ошибок по-разному
💡 Пример с несколькими типами ошибок:
try:
num = int("not a number")
except ZeroDivisionError:
print("Ошибка деления!")
except ValueError:
print("Ошибка преобразования!")
Теперь ваш код не боится ошибок — он просто идёт дальше 😎💪
👍1