#Вопросы_с_собеседования
❓Что будет в результате выполнения данного кода?
Ответ:
Результатом выполнения данного кода будет
Это объясняется тем, что замыкания в Python работают по принципу позднего связывания. Это означает, что значения переменных, используемых в замыканиях, ищутся во время вызова внутренней функции. Поэтому, когда вызывается любая из функций, возвращаемых
❓Что будет в результате выполнения данного кода?
Ответ:
Результатом выполнения данного кода будет
[6, 6, 6, 6]
, а не [0, 2, 4, 6]
.Это объясняется тем, что замыкания в Python работают по принципу позднего связывания. Это означает, что значения переменных, используемых в замыканиях, ищутся во время вызова внутренней функции. Поэтому, когда вызывается любая из функций, возвращаемых
multipliers()
, значение i
ищется исключительно в области видимости этой функции в данный момент. А значение i
, вне зависимости от того, какая из функций вызывается, после завершения цикла for
всегда равно 3
. Таким образом, каждая возвращаемая функция умножает значение, которое ей передано, на 3
, а поскольку в приведенном выше коде передается значение 2
, все они возвращают значение 6
(то есть 3 x 2
).👍21❤4🎉2🏆2
Получаем ежедневные новости с помощью Python
Для реализации нам нужно установить библиотеки requests и BeautifulSoup.
pip install bs4
pip install requests
Подробный разбор и описание кода можно найти здесь.
Для реализации нам нужно установить библиотеки requests и BeautifulSoup.
Подробный разбор и описание кода можно найти здесь.
👍19😢3🏆2🎉1
Самый встречаемый символ в строке
Наиболее рекомендуемый метод, который можно использовать для поиска всех вхождений, - это метод - использование
Мы находим максимально встречающийся символ, используя max() для значений.
Наиболее рекомендуемый метод, который можно использовать для поиска всех вхождений, - это метод - использование
collections.Counter() + max()
, он фактически получает частоту всех элементов, а также может использоваться для печати частоты одного элемента, если это необходимо. Мы находим максимально встречающийся символ, используя max() для значений.
👍24🎉4🏆1
Декораторы в Python: понять и полюбить
Декораторы — один из самых полезных инструментов в Python, однако новичкам они могут показаться непонятными.
Смотреть статью
Декораторы — один из самых полезных инструментов в Python, однако новичкам они могут показаться непонятными.
Смотреть статью
Tproger
Декораторы в Python: понять и полюбить
Декораторы в Python — полезная вещь, но многие новички её не понимают и обходят стороной. Объясняем, что они из себя представляют и как работают.
👍21❤4🗿4🔥3
Дорогие подписчики, напишите в комментариях список тем, которые вы бы хотели, чтобы мы рассмотрели в наших постах!
🔥10❤2👍1
Python стал международным языком. Теперь все переговоры касательно IT тематик ведутся именно на этом языке. Поздравим нашего любимца в комментариях!
👍110🎉17❤10🍾5🗿5🔥3🥰2🆒2😁1
Преобразовать список списков в список строк
На картинке представлен самый быстрый способ, как решить данную задачу. Другие способы можно посмотреть здесь.
На картинке представлен самый быстрый способ, как решить данную задачу. Другие способы можно посмотреть здесь.
👍33🎉4🏆2❤1
#Вопросы_с_собеседования
❓Напишите программу, которая возвращает количество гласных букв в строке
Наша программа при помощи регулярного выражения, вычисляет количество гласных (A, E, I, O, U, Y) в строке.
❓Напишите программу, которая возвращает количество гласных букв в строке
Наша программа при помощи регулярного выражения, вычисляет количество гласных (A, E, I, O, U, Y) в строке.
👍27🗿5🔥3🏆2🍾2❤1🤔1
🤔21👍15🔥10🏆5🗿3
Назад в будущее: практическое руководство по путешествию во времени с Python
В Python есть несколько встроенных библиотек для работы со временем и интервалами времени: time, datatime, calendar, timeit. Но когда какой модуль использовать? Рассмотрим на примерах.
Смотреть статью
В Python есть несколько встроенных библиотек для работы со временем и интервалами времени: time, datatime, calendar, timeit. Но когда какой модуль использовать? Рассмотрим на примерах.
Смотреть статью
Библиотека программиста
Назад в будущее: практическое руководство по путешествию во времени с Python
В Python есть несколько встроенных библиотек для работы со временем и интервалами времени: time, datetime, calendar, timeit. Но когда какой модуль использовать? Рассмотрим на примерах.
👍11🏆3❤1🎉1
#Вопросы_с_собеседования
❓Как выполняется обработка исключений в Python?
Для обработки исключений Python предоставляет конструкцию из трех слов:
Синтаксис выглядит примерно так:
try:
# попробовать сделать это
except:
# если блок try не сработал, попробовать это
finally:
# всегда делать это
На картинке представлен упрощенный пример такой конструкции. Здесь блок try терпит неудачу, поскольку мы не можем складывать целые числа со строками. Блок except устанавливает val = 10, а затем блок finally выводит complete.
❓Как выполняется обработка исключений в Python?
Для обработки исключений Python предоставляет конструкцию из трех слов:
try
, except
и finally
.Синтаксис выглядит примерно так:
try:
# попробовать сделать это
except:
# если блок try не сработал, попробовать это
finally:
# всегда делать это
На картинке представлен упрощенный пример такой конструкции. Здесь блок try терпит неудачу, поскольку мы не можем складывать целые числа со строками. Блок except устанавливает val = 10, а затем блок finally выводит complete.
👍37🤔3❤2🎉2🏆1
#Вопросы_с_собеседования
❓Какие нюансы есть в использовании чисел как ключей?
Числовые ключи в словарях подчиняются правилам сравнения чисел. Таким образом, int(1) и float(1.0) считаются одинаковым ключом. Однако из-за того, что значения типа float сохраняются приближенно, не рекомендуется использовать их в качестве ключей.
❓Какие нюансы есть в использовании чисел как ключей?
Числовые ключи в словарях подчиняются правилам сравнения чисел. Таким образом, int(1) и float(1.0) считаются одинаковым ключом. Однако из-за того, что значения типа float сохраняются приближенно, не рекомендуется использовать их в качестве ключей.
👍25🎉2🏆1
Хэширование
Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное значение должно иметь свой собственный хэш.
Для хэширования значений есть встроенная (её не надо устанавливать или импортировать) функция
Однако изменяемые объекты по типу списков и словарей нельзя хэшировать — интерпретатор выдаст ошибку.
Кстати, есть две пасхалки. Хэш бесконечности равен первым цифрам числа Пи, а хэш Not a Number равен нулю.
А ещё бывают коллизии: например, хэши чисел -1 и -2 одинаковы.
Хэш — это целое число фиксированного размера, которое идентифицирует определенное значение. Каждое уникальное значение должно иметь свой собственный хэш.
Для хэширования значений есть встроенная (её не надо устанавливать или импортировать) функция
hash()
. Используется в основном для сравнения разных объектов — сравнивать хэши легче и выгоднее.Однако изменяемые объекты по типу списков и словарей нельзя хэшировать — интерпретатор выдаст ошибку.
Кстати, есть две пасхалки. Хэш бесконечности равен первым цифрам числа Пи, а хэш Not a Number равен нулю.
А ещё бывают коллизии: например, хэши чисел -1 и -2 одинаковы.
👍24❤5🏆2🎉1
Быстрый deque
Для
deque
предпочтительнее, чем обычный список, когда нужны более быстрые операции добавления и вытаскивания элементов с начала и конца контейнера.deque
обеспечивает линейную сложность O(1) для операций добавления и выталкивания, у стандартного списка сложность по этим операциям O(n).Для
deque
есть возможность использовать стандартные функции — sum
, min
, max
и другие.👍43🏆3🎉2