⚡️ Отлавливаем ошибки
Для этого в Python есть конструкция try/except/else/finally. Здесь будет описано, что они делают:
#теория
Для этого в Python есть конструкция try/except/else/finally. Здесь будет описано, что они делают:
try
— внутри этого оператора располагается код, внутри которого может появиться ошибка.except ExceptionType as e
— "отлавливает" ошибку, сохраняет её как переменную e и выполняет необходимые действия.else
— выполняется, если никаких ошибок не было.finally
— код, который запускается всегда, независимо от того, была ошибка или нет#теория
⚡️ Задачка с собеседования | #Easy
Условие:
Написать функцию, которая будет принимать диапазон букв, разделённых дефисом и возвращать все символы между ними включительно.
Никаких проверок на ошибку делать не надо, минимальное значение всегда меньше или равно максимальному.
Пример:
letters_range("a-c") -> abc
letters_range("a-a") -> a
letters_range("s-H") -> stuvwxyzABCDEFGH
letters_range("a-A") -> abcdefghijklmnopqrstuvwxyzA
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Написать функцию, которая будет принимать диапазон букв, разделённых дефисом и возвращать все символы между ними включительно.
Никаких проверок на ошибку делать не надо, минимальное значение всегда меньше или равно максимальному.
Пример:
letters_range("a-c") -> abc
letters_range("a-a") -> a
letters_range("s-H") -> stuvwxyzABCDEFGH
letters_range("a-A") -> abcdefghijklmnopqrstuvwxyzA
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Открываем ссылки
webbrowser — модуль, обеспечивающий простое взаимодействие с браузером. Но, пока что, только открытие ссылок.
Для работы не надо создавать какие-либо экземпляры, достаточно просто воспользоваться методами библиотеки, такими как open, open_new и open_new_tab.
Если же вам необходимо открывать какой-то отдельный браузер, то можете воспользоваться get для получения контроллера.
Подробнее об этом можно почитать на сайте документации.
#миниурок #webbrowser
webbrowser — модуль, обеспечивающий простое взаимодействие с браузером. Но, пока что, только открытие ссылок.
Для работы не надо создавать какие-либо экземпляры, достаточно просто воспользоваться методами библиотеки, такими как open, open_new и open_new_tab.
Если же вам необходимо открывать какой-то отдельный браузер, то можете воспользоваться get для получения контроллера.
Подробнее об этом можно почитать на сайте документации.
#миниурок #webbrowser
⚡️ Метод get()
Вы можете брать значения с помощью квадратных скобочек, но, если ключа не существует, то вы получите ошибку.
Что бы каждый раз не отлавливать ошибки, воспользуйтесь методом
Он возвращает значение, если ключ найден, или второй аргумент, который по умолчанию — None.
#теория
Вы можете брать значения с помощью квадратных скобочек, но, если ключа не существует, то вы получите ошибку.
Что бы каждый раз не отлавливать ошибки, воспользуйтесь методом
get(key, default)
. Он возвращает значение, если ключ найден, или второй аргумент, который по умолчанию — None.
#теория
👍1
⚡️ Задачка с собеседования | #Easy
Условие:
Написать функцию, которая будет принимать список и находить уникальное число.
Пример:
find_unique_value([1, 2, 1, 1]) -> 2
find_unique_value([2, 3, 3, 3]) -> 2
find_unique_value([5, 5, 5, 0.5]) -> 0.5
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Написать функцию, которая будет принимать список и находить уникальное число.
Пример:
find_unique_value([1, 2, 1, 1]) -> 2
find_unique_value([2, 3, 3, 3]) -> 2
find_unique_value([5, 5, 5, 0.5]) -> 0.5
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Создаём интерфейсы для взаимодействия
В этом нам поможет hug — удобный фреймворк, позволяющий быстро создавать API для нескольких интерфейсов.
Установка:
Для работы с ним вам нужно просто импортировать модуль, настроить интерфейс (
#миниурок #hug
В этом нам поможет hug — удобный фреймворк, позволяющий быстро создавать API для нескольких интерфейсов.
Установка:
pip3 install hug
На данный момент hug является самым быстрым способом создания API-интерфейсов на Python3. Он поддерживает HTTP обработку, cli (командную строку) или локальный запуск скрипта.Для работы с ним вам нужно просто импортировать модуль, настроить интерфейс (
hug.local
, hug.get
, hug.cli
) и запустить скрипт с помощью команды hug -f file.py
из терминала.#миниурок #hug
⚡️ Получаем словарь c переменными
Вот, что они делают:
Подробнее: locals, globals, vars.
globals
, locals
, vars
— всё это функции, позволяющие узнать о используемых в данный момент переменных.Вот, что они делают:
globals()
— возвращает словарь со всеми переменными в конкретном модуле (внутри которого записана функция).locals()
— возвращает словарь значений из текущего пространства имён. Если это модуль, то вернёт то же, что и globals, иначе — переменные внутри функции.vars(object)
— возвращает атрибут __dict__
из object, если аргумент задан. Иначе работает так же как locals или globals.Подробнее: locals, globals, vars.
👍1
⚡️ Задачка с собеседования | #Medium
Условие:
Написать функцию, которая будет переворачивать только буквы. То есть внутри строки переместиться с начала в конец должны только буквы, остальные символы (-, =, числа и т.д.) должны остаться на своём месте.
Пример:
reverse_letters("a-bC-dEf-ghIj") -> j-Ih-gfE-dCba
reverse_letters("a-bC=Def+GHi3") -> i-HG=feD+Cba3
reverse_letters("7_28]") -> 7_28]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Написать функцию, которая будет переворачивать только буквы. То есть внутри строки переместиться с начала в конец должны только буквы, остальные символы (-, =, числа и т.д.) должны остаться на своём месте.
Пример:
reverse_letters("a-bC-dEf-ghIj") -> j-Ih-gfE-dCba
reverse_letters("a-bC=Def+GHi3") -> i-HG=feD+Cba3
reverse_letters("7_28]") -> 7_28]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Работаем с базой данных SQLite
SQLite — популярная база данных, основным преимуществом которой является то, что все данные хранятся в одном файле.
Работать с ней в нашем любимом языке можно с помощью предустановленного модуля — sqlite3.
Для начала, стоит подключить базу данных с помощью метода
Считывание данных происходит с помощью
А ещё больше об этом модуле можете прочитать на сайте документации.
#миниурок #sqlite3
SQLite — популярная база данных, основным преимуществом которой является то, что все данные хранятся в одном файле.
Работать с ней в нашем любимом языке можно с помощью предустановленного модуля — sqlite3.
Для начала, стоит подключить базу данных с помощью метода
connect(file_path)
, после — взять курсор с помощью con.cursor()
и выполнить действие, используя execute(data, params)
.Считывание данных происходит с помощью
cursor.fetchall()
или cursor.fetchone()
.А ещё больше об этом модуле можете прочитать на сайте документации.
#миниурок #sqlite3
Что выведет код выше?
Anonymous Quiz
30%
['a', 'b', 'c', 'd', 'e']
22%
['a', 'c', 'd', 'e']
8%
['a', 'b', 'c']
8%
['a', 'c']
31%
Ошибку
⚡️ Операции над множествами
Множества — набор не повторяющихся значений. Создать их можно с помощью
Над множествами можно проводить такие операции:
• Разность (-) — убираем из a все элементы b.
• Пересечение (&) — все элементы и в a, и в b
• Объединение (|) — все элементы, что есть в a или в b
• Симметричное вычитание (^) — все элементы, что есть в a или b но не в обоих множествах
#теория
Множества — набор не повторяющихся значений. Создать их можно с помощью
set(iter)
или используя фигурные скобки ({}
)Над множествами можно проводить такие операции:
• Разность (-) — убираем из a все элементы b.
• Пересечение (&) — все элементы и в a, и в b
• Объединение (|) — все элементы, что есть в a или в b
• Симметричное вычитание (^) — все элементы, что есть в a или b но не в обоих множествах
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
Ранее мы делали задачку, где надо было перевести римские числа в десятичную систему.
Теперь задача в том, чтобы сделать наоборот: перевести число в римскую систему чисел. (про символы можно почитать тут).
Значения на входе всегда будут в таком промежутке: 1 <= x <= 4000
Пример:
to_roman(1999) -> MCMXCIX
to_roman(1) -> I
to_roman(1000) -> M
to_roman(21) -> XXI
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Ранее мы делали задачку, где надо было перевести римские числа в десятичную систему.
Теперь задача в том, чтобы сделать наоборот: перевести число в римскую систему чисел. (про символы можно почитать тут).
Значения на входе всегда будут в таком промежутке: 1 <= x <= 4000
Пример:
to_roman(1999) -> MCMXCIX
to_roman(1) -> I
to_roman(1000) -> M
to_roman(21) -> XXI
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования