Читать книгу «Справочник Python» онлайн полностью📖 — Дмитрий Одиссеев — MyBook.

Вложенные условия

User = “admin”

Password = “1234”

If user == “admin”:

If password == “1234”:

Print(“Добро пожаловать, админ!”)

Else:

Print(“Пароль неверный”)

Else:

Print(“Пользователь не найден”)

Условия с логическими операторами

Login = True

Permissions = True

If login and permissions:

Print(“Вход успешен”)

Else:

Print(“Ошибка доступа”)

Цикл for

For – проходит по каждому элементу списка. От начала до конца.

Names = [“Оля”, “Игорь”, “Лена”]

For name in names:

Print(f”Привет, {name}”)

Цикл whIle. Пока условие верно

Counter = 0

While counter < 5:

Print(f”Счётчик: {counter}”)

Counter += 1

Перебор по диапазону range

For i in range(3):

Print(“Бум!”)

For i in range(1, 6, 2):

Print(i) # 1, 3, 5

Управление циклом

For i in range(10):

If i == 5:

Break # выйти из цикла

Print(i)

For i in range(5):

If i % 2 == 0:

Continue # пропустить выполнение

Print(i)

For i in range(3):

Print(i)

Else:

Print(“Цикл завершён без break”)

Вложенные циклы

For i in range(3):

For j in range(2):

Print(f”i={i}, j={j}”)

Простабудетя функция

Def greet():

Print(“Привет, Одиссей!”)

Greet() # вызов

Функция с параметрами

Def greet(name):

Print(f”Привет, {name}!”)

Greet(“Лена”) # Привет, Лена!

Возвращаем значение

Def square(x):

Return x ** 2

Result = square(5)

Print(result) # 25

Значение поу умолчанию

Def greet(name=”гость”):

Print(f”Добро пожаловать, {name}”)

Greet() # Добро пожаловать, гость

Greet(“Анна”) # Добро пожаловать, Анна

Аргументы

Def show_all(*args):

For item in args:

Print(item)

Show_all(“файл1.txt”, “файл2.txt”)

Def config(**kwargs):

For key, value in kwargs.items():

Print(f”{key} = {value}”)

Config(theme=”dark”, font=”Arial”)

Вложенные функции

Def outer():

Def inner():

Print(“Внутри!”)

Inner()

Исключения

Try – пытаемся выполнить

Except – ловим ошибку и пишем

Базовая конструкция try-except

Try:

Number = int(input(“Введите число: “))

Except ValueError:

Print(“Это не число!”)

Обработка нескольких ошибок

Try:

F = open(“data.txt”)

Content = f.read()

Except FileNotFoundError:

Print(“Файл не найден”)

Except IOError:

Print(“Ошибка при чтении”)

Обработчик finally

Он выполняется всегда, даже если выдает ошибку. В этом случае он закрывает файл.

Try:

F = open(“data.txt”)

# операции

Except:

Print(“Ошибка”)

Finally:

f.close() # выполняется всегда, даже при ошибке

Создание своих исключений

Raise позволяет вручную вызвать исключение.

Def check_age(age):

If age < 0:

Raise ValueError(“Возраст не может быть отрицательным”)

Check_age(-5) # вызовет ошибку

Отработка по типу ошибки

Try:

X = 1 / 0

Except ZeroDivisionError as e:

Print(f”Ошибка деления: {e}”)

Lambda функции (анонимные)

Это однострочная анонимная функция без имени. Подходит чтобы совершить быстрое действие без присваивании и объявлений в коде переменных

Square = lambda x: x ** 2

Print(square(5)) # 25 # можно так но эффективно будет функцию задать в print без переменной.

Примеры использования

С map

Nums = [1, 2, 3]

Squares = list(map(lambda x: x ** 2, nums))

Print(squares) # [1, 4, 9]

C filter

Nums = [5, 8, 11, 3]

Evens = list(filter(lambda x: x % 2 == 0, nums))

Print(evens) # [8]

Сортировка по условию

Data = [(1, “А”), (3, “B”), (2, “C”)]

Sorted_data = sorted(data, key=lambda item: item[0])

Print(sorted_data) # [(1, ‘А’), (2, ‘C’), (3, ‘B’)]

Если логика функции сложная или огромная, то здесь она не пригодится.

Дополнение к прошлым командам
Списки list

Append()

Добавляет элемент в конец списка

Names.append(“Игорь”)

Extend()

Добавляет несколько элементов сразу

Nums.extend([4, 5])

Insert()

Вставляет элемент по индексу

Colors.insert(1, “зелёный”)

Remove()

Удаляет первое вхождение элемента

Fruits.remove(“яблоко”)

Pop()

Удаляет элемент по индексу (или последний)

Items.pop(0)

Sort()

Сортирует список

Scores.sort()

Reverse()

Переворачивает список

Cards.reverse()

Count()

Считает количество вхождений элемента

Numbers.count(7)

Index()

Возвращает индекс элемента

Names.index(“Лена”)

Строки str

Strip()

Удаляет пробелы по краям строки

“ текст “.strip() → “текст”

Split()

Делит строку по разделителю

“а,б,в”.split(“,”) → [“а”, “б”, “в”]

Join()

Объединяет список строк в одну строку

“-“.join([“a”, “b”, “c”]) → “a-b-c”

Replace()

Заменяет подстроку

Text.replace(“мир”, “Python”)

Upper()

Превращает в заглавные буквы

“test”.upper() → “TEST”

Lower()

Превращает в строчные

“TEST”.lower() → “test”

Find()

Ищет подстроку и возвращает индекс

“hello”.find(“e”) → 1

Словари dict

Get()

Получает значение по ключу

User.get(“name”)

Keys()

Возвращает список всех ключей

Data.keys()

Values()

Возвращает список всех значений

Data.values()

Items()

Список пар ключ-значение

For k, v in info.items(): print(k, v)

Update()

Обновляет словарь новым содержимым

Config.update({“theme”: “dark”})

Pop()

Удаляет ключ и возвращает его значение

User.pop(“age”)

Функции

Def

Объявляет функцию

Def greet(): print(“Привет”)

Return

Возвращает значение из функции

Return x * 2

Lambda

Анонимная компактная функция

Lambda x: x ** 2

*args

Передача любого количества позиционных аргументов

Def show(*args): print(args)

**kwargs

Передача именованных аргументов

Def config(**kwargs): print(kwargs)