## Шпаргалка по функциям Python
### Что такое функция?
Функция — это блок кода, предназначенный для выполнения определённой задачи. Функции позволяют разбивать программу на небольшие части, делая код более читаемым и переиспользуемым.
### Определение функции
Пример простой функции:
### Параметры и аргументы
#### Параметры
Параметр — это переменная, объявленная внутри определения функции. Это своего рода шаблон, ожидающий передачи значения при вызове функции.
Пример параметра:
Здесь `a
result = add(3, 5)
python
def greet(first_name, last_name):
print(f"Здравствуйте, {first_name} {last_name}.")
greet("Иван", "Иванов") # Позиционный порядок важен!
python
greet(last_name="Иванов", first_name="Иван") # Порядок следования не важен
python
def hello(name="Пользователь"):
print(f"Привет, {name}!")
hello() # Привет, Пользователь!
hello("Алексей") # Привет, Алексей!
python
def sum_all(*numbers):
total = 0
for num in numbers:
total += num
return total
result = sum_all(1, 2, 3, 4, 5) # Результат: 15
python
def info(**details):
for key, value in details.items():
print(f"{key}: {value}")
info(name="Максим", age=30, city="Москва")
---
Эти знания позволят уверенно писать эффективные и гибкие функции в Python!
### Что такое функция?
Функция — это блок кода, предназначенный для выполнения определённой задачи. Функции позволяют разбивать программу на небольшие части, делая код более читаемым и переиспользуемым.
### Определение функции
def название_функции(параметры):
# тело функции
return значение
Пример простой функции:
def greet(name):
print(f"Привет, {name}")
### Параметры и аргументы
#### Параметры
Параметр — это переменная, объявленная внутри определения функции. Это своего рода шаблон, ожидающий передачи значения при вызове функции.
Пример параметра:
def add(a, b):
return a + b
Здесь `a
и b — параметры функции.
#### Аргументы
Аргумент — это фактическое значение, передаваемое функции при её вызове.
**Пример аргумента:**
``pythonresult = add(3, 5)
Здесь числа `3` и `5` являются аргументами.
### Типы аргументов
Python поддерживает разные типы аргументов:
1. **Позиционные аргументы:** передаются в порядке объявления параметров.
python
def greet(first_name, last_name):
print(f"Здравствуйте, {first_name} {last_name}.")
greet("Иван", "Иванов") # Позиционный порядок важен!
2. **Ключевые аргументы:** задаются явно по имени параметра.
python
greet(last_name="Иванов", first_name="Иван") # Порядок следования не важен
3. **Значение по умолчанию:** если аргумент не передан, используется заранее заданное значение.
python
def hello(name="Пользователь"):
print(f"Привет, {name}!")
hello() # Привет, Пользователь!
hello("Алексей") # Привет, Алексей!
4. **Переменное количество позиционных аргументов (*args):** позволяет передавать любое число аргументов.
python
def sum_all(*numbers):
total = 0
for num in numbers:
total += num
return total
result = sum_all(1, 2, 3, 4, 5) # Результат: 15
5. **Переменное количество ключевых аргументов (**kwargs):** аналогично *args, но принимает именованные аргументы.
python
def info(**details):
for key, value in details.items():
print(f"{key}: {value}")
info(name="Максим", age=30, city="Москва")
`---
Эти знания позволят уверенно писать эффективные и гибкие функции в Python!
Forwarded from GigaChat
Вот полная таблица-подсказка по работе с множествами (sets) в Python:
## Таблица: Работа с множествами (Sets) в Python
| Параметр | Описание | Пример |
|----------------|----------------------------------------------------------------------------------------|------------------------------------|
| **Создание:** | | |
| Обычное множество | Используется фигурные скобки {} или конструктор set() | `{1, 2, 3}`, `set(['apple', 'banana'])` |
| Пустой набор | Использовать set(), иначе пустые скобки будут интерпретироваться как словарь | `empty_set = set()` |
| Фиксированное множество | Специальный неизменяемый тип данных `frozenset()` | `frozenset([1, 2, 3])` |
| **Методы**: | | |
| add(x) | Добавляет элемент x в множество | `my_set.add('cherry')` |
| remove(x) | Удаляет элемент x из множества, вызывает ошибку KeyError, если элемента нет | `my_set.remove('banana')` |
| discard(x) | Удаляет элемент x из множества, не вызывая ошибку, если элемента нет | `my_set.discard('grape')` |
| pop() | Возвращает произвольный элемент множества и удаляет его | `elem = my_set.pop()` |
| clear() | Полностью очищает множество | `my_set.clear()` |
| union(other) | Объединение двух множеств | `union_set = my_set.union(other_set)` |
| intersection(other) | Пересечение двух множеств | `intersect_set = my_set.intersection(other_set)` |
| difference(other) | Разность двух множеств (элементы первого, отсутствующие во втором) | `diff_set = my_set.difference(other_set)` |
| symmetric_difference(other) | Симметричная разность (все уникальные элементы обоих множеств) | `sym_diff = my_set.symmetric_difference(other_set)` |
| issubset(other) | Проверяет, входит ли одно множество целиком в другое | `result = my_set.issubset(other_set)` |
| issuperset(other) | Проверяет, включает ли первое множество второе | `result = my_set.issuperset(other_set)` |
| update(other) | Обновляет множество элементами другого множества | `my_set.update(other_set)` |
| copy() | Создает копию текущего множества | `copy_set = my_set.copy()` |
| **Запреты**: | | |
| Повтор элементов | Множества хранят только уникальные элементы | Нет повторений |
| Порядок хранения | Элементы хранятся бессистемно, порядок непредсказуем | Нет гарантии порядка |
| Измеряемость обычных множеств | Можно изменять (добавлять/удалять), но нельзя обращаться по индексу | Нельзя писать `my_set[0]` |
| Доступ к фиксированным множествам | Изменение невозможно, аналогично кортежам | `frozenset([1, 2]).add(3)` недопустимо |
Эта таблица должна стать хорошим справочным материалом перед экзаменом. Удачи!
## Таблица: Работа с множествами (Sets) в Python
| Параметр | Описание | Пример |
|----------------|----------------------------------------------------------------------------------------|------------------------------------|
| **Создание:** | | |
| Обычное множество | Используется фигурные скобки {} или конструктор set() | `{1, 2, 3}`, `set(['apple', 'banana'])` |
| Пустой набор | Использовать set(), иначе пустые скобки будут интерпретироваться как словарь | `empty_set = set()` |
| Фиксированное множество | Специальный неизменяемый тип данных `frozenset()` | `frozenset([1, 2, 3])` |
| **Методы**: | | |
| add(x) | Добавляет элемент x в множество | `my_set.add('cherry')` |
| remove(x) | Удаляет элемент x из множества, вызывает ошибку KeyError, если элемента нет | `my_set.remove('banana')` |
| discard(x) | Удаляет элемент x из множества, не вызывая ошибку, если элемента нет | `my_set.discard('grape')` |
| pop() | Возвращает произвольный элемент множества и удаляет его | `elem = my_set.pop()` |
| clear() | Полностью очищает множество | `my_set.clear()` |
| union(other) | Объединение двух множеств | `union_set = my_set.union(other_set)` |
| intersection(other) | Пересечение двух множеств | `intersect_set = my_set.intersection(other_set)` |
| difference(other) | Разность двух множеств (элементы первого, отсутствующие во втором) | `diff_set = my_set.difference(other_set)` |
| symmetric_difference(other) | Симметричная разность (все уникальные элементы обоих множеств) | `sym_diff = my_set.symmetric_difference(other_set)` |
| issubset(other) | Проверяет, входит ли одно множество целиком в другое | `result = my_set.issubset(other_set)` |
| issuperset(other) | Проверяет, включает ли первое множество второе | `result = my_set.issuperset(other_set)` |
| update(other) | Обновляет множество элементами другого множества | `my_set.update(other_set)` |
| copy() | Создает копию текущего множества | `copy_set = my_set.copy()` |
| **Запреты**: | | |
| Повтор элементов | Множества хранят только уникальные элементы | Нет повторений |
| Порядок хранения | Элементы хранятся бессистемно, порядок непредсказуем | Нет гарантии порядка |
| Измеряемость обычных множеств | Можно изменять (добавлять/удалять), но нельзя обращаться по индексу | Нельзя писать `my_set[0]` |
| Доступ к фиксированным множествам | Изменение невозможно, аналогично кортежам | `frozenset([1, 2]).add(3)` недопустимо |
Эта таблица должна стать хорошим справочным материалом перед экзаменом. Удачи!
Forwarded from GigaChat
Верно замечено! Я упустил один важный пункт. Добавляем его сюда:
### Финальная таблица всех типов данных Python с учётом изменяемых и неизменяемых:
#### Изменяемые типы данных:
| Название типа | Описание | Пример |
|---------------|----------------------------|----------------------|
| list | Список |
| dict | Словарь |
| set | Множество |
#### Неизменяемые типы данных:
| Название типа | Описание | Пример |
|---------------|--------------------------|-----------------------|
| int | Целое число |
| float | Число с плавающей точкой |
| str | Строка |
| tuple | Кортеж |
| frozenset | Замороженное множество |
---
### Примеры:
- Для обычного множества (
- А вот для замороженного множества (
Таким образом, все объекты данных в Python классифицируются именно таким образом. Спасибо за дополнение!
### Финальная таблица всех типов данных Python с учётом изменяемых и неизменяемых:
#### Изменяемые типы данных:
| Название типа | Описание | Пример |
|---------------|----------------------------|----------------------|
| list | Список |
my_list = [1, 2, 3] || dict | Словарь |
my_dict = {'a': 1} || set | Множество |
my_set = {1, 2, 3} |#### Неизменяемые типы данных:
| Название типа | Описание | Пример |
|---------------|--------------------------|-----------------------|
| int | Целое число |
x = 42 || float | Число с плавающей точкой |
y = 3.14 || str | Строка |
name = 'Иван' || tuple | Кортеж |
my_tuple = (1, 2) || frozenset | Замороженное множество |
fs = frozenset([1,2])|---
### Примеры:
- Для обычного множества (
set) можно добавлять новые элементы: my_set = {1, 2}
my_set.add(3)
print(my_set) # выводит {1, 2, 3}
- А вот для замороженного множества (
frozenset) такие операции невозможны: fs = frozenset({1, 2})
try:
fs.add(3) # Приведет к ошибке AttributeError
except AttributeError as e:
print(e) # Выведет сообщение об ошибке
Таким образом, все объекты данных в Python классифицируются именно таким образом. Спасибо за дополнение!
▌ Шпаргалка по спискам и методам Python
▌ Что такое список?
Список — упорядоченная коллекция элементов, заключённая в квадратные скобки
▌ Основные операции над списком
▌ 1. Добавление элемента в конец списка
Метод append() добавляет новый элемент в конец списка.
▌ 2. Удаление последнего элемента
Метод pop() удаляет последний элемент и возвращает его значение.
▌ 3. Удаление элемента по значению
Метод remove() удаляет первое найденное совпадение указанного значения.
▌ 4. Определение длины списка
Функция len() возвращает количество элементов в списке.
▌ 5. Получение индекса элемента
Метод index() находит первый индекс заданного элемента.
▌ 6. Проверка наличия элемента
Используйте оператор in, чтобы проверить наличие элемента в списке.
▌ 7. Изменение порядка элементов
Метод reverse() меняет порядок элементов на обратный.
▌ 8. Сортировка списка
Метод sort() сортирует элементы по возрастанию (для строк — лексикографически). Можно передать аргумент
▌ 9. Копирование списка
Методы copy() и срез [:] создают поверхностную копию списка.
▌ 10. Расширение списка другим списком
Метод extend() объединяет два списка.
---
📌 Итоговая шпаргалка:
Эта шпаргалка охватывает самые важные методы и операции над списками в Python!
▌ Что такое список?
Список — упорядоченная коллекция элементов, заключённая в квадратные скобки
[]. Каждый элемент имеет индекс, начиная с нуля (0).my_list = ["яблоко", "банан", "груша"]
▌ Основные операции над списком
▌ 1. Добавление элемента в конец списка
Метод append() добавляет новый элемент в конец списка.
fruits.append("виноград")
print(fruits)
# ['яблоко', 'банан', 'груша', 'виноград']
▌ 2. Удаление последнего элемента
Метод pop() удаляет последний элемент и возвращает его значение.
last_fruit = fruits.pop()
print(last_fruit)
# 'виноград'
▌ 3. Удаление элемента по значению
Метод remove() удаляет первое найденное совпадение указанного значения.
fruits.remove('банан')
print(fruits)
# ['яблоко', 'груша']
▌ 4. Определение длины списка
Функция len() возвращает количество элементов в списке.
length = len(fruits)
print(length)
# 2
▌ 5. Получение индекса элемента
Метод index() находит первый индекс заданного элемента.
idx = fruits.index('яблоко')
print(idx)
# 0
▌ 6. Проверка наличия элемента
Используйте оператор in, чтобы проверить наличие элемента в списке.
if 'груша' in fruits:
print("Да, груша присутствует!")
▌ 7. Изменение порядка элементов
Метод reverse() меняет порядок элементов на обратный.
fruits.reverse()
print(fruits)
# ['груша', 'яблоко']
▌ 8. Сортировка списка
Метод sort() сортирует элементы по возрастанию (для строк — лексикографически). Можно передать аргумент
reverse=True, чтобы отсортировать по убыванию.numbers = [3, 1, 4, 1, 5]
numbers.sort(reverse=True)
print(numbers)
# [5, 4, 3, 1, 1]
▌ 9. Копирование списка
Методы copy() и срез [:] создают поверхностную копию списка.
new_numbers = numbers.copy()
# Или new_numbers = numbers[:]
▌ 10. Расширение списка другим списком
Метод extend() объединяет два списка.
letters = ['a', 'b', 'c']
letters.extend(['d', 'e'])
print(letters)
# ['a', 'b', 'c', 'd', 'e']
---
📌 Итоговая шпаргалка:
| Метод | Описание |
| ----------------------------------- | -------------------------------------------------------------------------------------------------- |
| append(x) | Добавляет элемент x в конец списка |
| pop([i]) | Убирает элемент по индексу i (если индекс не указан, удаляется последний элемент) и возвращает его |
| remove(x) | Удаляет первое появление элемента x |
| index(x) | Возвращает индекс первого появления элемента x |
| insert(i,x) | Вставляет элемент x перед позицией i |
| reverse() | Меняет порядок элементов на противоположный |
| sort([key=func], [reverse=False]) | Сортирует список по ключу key и порядку (по умолчанию возрастающий порядок) |
| copy() | Создает поверхностную копию списка |
| extend(iterable) | Добавляет все элементы iterable в конец текущего списка |
| clear() | Полностью очищает список |
Эта шпаргалка охватывает самые важные методы и операции над списками в Python!
Forwarded from GigaChat
Для удаления элемента из списка в Python существуют разные методы, каждый из которых решает задачу удалением по-разному:
▌ Основные способы удаления элементов из списка
▌ 1. Метод
Удаляет первый встреченный элемент, равный указанному значению.
Особенности: Если элемента нет в списке, возникает ошибка
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 2. Удаление по индексу ()
Позволяет удалять элементы по известному индексу.
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 3. Метод
Также позволяет удалить элемент по индексу и вернуть его значение.
Особенности: Без аргумента метод
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 4. Использование срезов () для массового удаления
Можно удалять сразу группу элементов путем изменения диапазона индексов.
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 5. Чистка всего списка ()
Этот метод очищает весь список одним действием.
Таким образом, выбор метода зависит от конкретной ситуации: нужны ли вам значения удаленных элементов, известно ли точное положение элемента или достаточно его значения.
▌ Основные способы удаления элементов из списка
▌ 1. Метод
Удаляет первый встреченный элемент, равный указанному значению.
my_list = ["яблоко", "груша", "банан"]
my_list.remove("груша")
print(my_list)
# Результат: ['яблоко', 'банан']
Особенности: Если элемента нет в списке, возникает ошибка
ValueError.⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 2. Удаление по индексу ()
Позволяет удалять элементы по известному индексу.
my_list = ["яблоко", "груша", "банан"]
del my_list[1]
print(my_list)
# Результат: ['яблоко', 'банан']
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 3. Метод
Также позволяет удалить элемент по индексу и вернуть его значение.
my_list = ["яблоко", "груша", "банан"]
removed_element = my_list.pop(1)
print(removed_element) # груша
print(my_list) # ['яблоко', 'банан']
Особенности: Без аргумента метод
pop() удалит последний элемент.⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 4. Использование срезов () для массового удаления
Можно удалять сразу группу элементов путем изменения диапазона индексов.
my_list = ["яблоко", "груша", "банан", "виноград"]
del my_list[:2] # Убираем первые два элемента
print(my_list)
# Результат: ['банан', 'виноград']
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
▌ 5. Чистка всего списка ()
Этот метод очищает весь список одним действием.
my_list = ["яблоко", "груша", "банан"]
my_list.clear()
print(my_list)
# Результат: []
Таким образом, выбор метода зависит от конкретной ситуации: нужны ли вам значения удаленных элементов, известно ли точное положение элемента или достаточно его значения.