Python вопросы на собеседовании с ответами
7.49K subscribers
4 photos
302 links
Подготовка к собеседованию на Junior Python Developer. В этом канале никакой воды, только вопросы с собеседований и ответы на них.

@aldrson

По вопросам рекламы : @anothertechrock
Download Telegram
#вопрос242

Создайте регулярное выражение для проверки того, является ли строка валидным числом с плавающей точкой. Обратите внимание: написать нужно паттерн, а не функцию.

Примеры:

pattern = "ваш_паттерн"
bool(re.match(pattern, "12.12")) ➞ True
bool(re.match(pattern, "12.")) ➞ False
bool(re.match(pattern, ".1")) ➞ True
bool(re.match(pattern, "-.1")) ➞ True
bool(re.match(pattern, "+4.4")) ➞ True
bool(re.match(pattern, "+4")) ➞ False
bool(re.match(pattern, "+4.4av")) ➞ False
👏2👍1
#вопрос243

Напишите функцию, которая будет принимать список чисел и проверять, является ли каждое число больше суммы всех предыдущих чисел. Если все числа в списке успешно пройдут проверку, функция должна вернуть True, в противном случае — False.

Примечание: первое число в списке всегда проходит проверку.

Примеры:

greater_than_sum([2, 3, 7, 13, 28]) ➞ True
# 3 > 2 = True
# 7 > 2 + 3 = True
# 13 > 2 + 3 + 7 = True
# 28 > 2 + 3 + 7 + 13 = True

greater_than_sum([1, 2, 4, 6, 13]) ➞ False
# 2 > 1 = True
# 4 > 1 + 2 = True
# 6 > 1 + 2 + 4 = False
# 13 > 1 + 2 + 4 + 6 = False
3
#вопрос244

Как преобразовать строку в список?
😁1
#вопрос245

Создайте функцию, которая принимает строку. Если в строке все символы в верхнем регистре, преобразуйте их в нижний регистр и добавьте восклицательный знак в конце.

Примеры:

normalize("CAPS LOCK DAY IS OVER") ➞ "Caps lock day is over!"

normalize("Today is not caps lock day.") ➞ "Today is not caps lock day."

normalize("Let us stay calm, no need to panic.") ➞ "Let us stay calm, no need to panic."
#вопрос246

Напишите функцию, которая преобразует список символов в список словарей, где ключи – это сами символы, а значениями являются ASCII-коды этих символов.

Примеры:

to_dict(["a", "b", "c"]) ➞ [{"a": 97}, {"b": 98}, {"c": 99}]

to_dict(["^"]) ➞ [{"^": 94}]

to_dict([]) ➞ []
👍3
#вопрос247

Создайте функцию, которая принимает число в шестнадцатеричном формате (HEX) и возвращает его двоичный эквивалент (в виде строки).

Примеры:

to_binary(0xFF) ➞ "11111111"

to_binary(0xAA) ➞ "10101010"

to_binary(0xFA) ➞ "11111010"
👍1
#вопрос248

Вы готовите список украденных вещей для отправки в страховую компанию. Завершая работу, вы замечаете, что неправильно его отформатировали. Напишите функцию, которая принимает словарь, содержащий хотя бы одну пару ключ/значение, и преобразовывает все значения в числа.

Примеры:

convert_to_number({ "piano": "200" }) ➞ { "piano": 200 }

convert_to_number({ "piano": "200", "tv": "300" }) ➞ { "piano": 200, "tv": 300 }

convert_to_number({ "piano": "200", "tv": "300", "stereo": "400" }) ➞ { "piano": 200, "tv": 300, "stereo": 400 }
👍1🥰1
#вопрос249

Создайте функцию, которая будет принимать три списка целых чисел (lst1, lst2, lst3) и возвращать сумму чисел, которые являются общими для всех трех списков.

Примеры:

sum_common([1, 2, 3], [5, 3, 2], [7, 3, 2]) ➞ 5
// 2 и 3 являются общими для всех трех списков.

sum_common([1, 2, 2, 3], [5, 3, 2, 2], [7, 3, 2, 2]) ➞ 7
// 2, 2 и 3 являются общими для всех трех списков.

sum_common([1], [1], [2]) ➞ 0
👎1
#вопрос250

Создайте функцию, которая принимает список целых чисел и находит наибольшее целое число, используя рекурсию.

Примеры:

find_highest([-1, 3, 5, 6, 99, 12, 2]) ➞ 99

find_highest([0, 12, 4, 87]) ➞ 87

find_highest([8]) ➞ 8
👏21
#вопрос251

Создайте функцию, которая преобразует дату в формате MM/DD/YYYY в формат YYYYDDMM. Возвращаемое значение должно быть строкой.

Примеры:

format_date("11/12/2019") ➞ "20191211"

format_date("12/31/2019") ➞ "20193112"

format_date("01/15/2019") ➞ "20191501"