PythonBoost - сообщество питонистов
12.4K subscribers
292 photos
6 videos
542 links
Лучший Python телеграм канал для новичков.

Цель: подготовка студентов, начинающих питонистов к нахождению первой работы.

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Какой оператор перегружается функцией __or__()?
Anonymous Quiz
35%
||
43%
|
6%
//
2%
/
13%
Посмотреть ответ
Каким будет вывод этого кода?
Anonymous Quiz
63%
1
8%
2
3%
3
19%
4
7%
Посмотреть ответ
Каким будет вывод этого кода?
Anonymous Quiz
72%
2
18%
1
1%
0
6%
Ошибка
4%
Посмотреть ответ
Задача для новичков.

Напишите функцию под названием zeros, которая бы принимала в качестве аргумента целое число n и возвращала количество нулей в конце факториала данного числа.

Например, zeros(6) должна возвращать 1, так как 6! = 120, то есть в конце числа один 0.

Внимание: факториал числа растет очень быстро, поэтому вам нужно написать данную функцию не вычисляя само значение факториала. Подумайте, как это сделать!

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Тест. Цикл while

Грамотное применение циклов — важное умение, особенно для новичка. Проверьте, насколько хорошо вы знаете цикл while.
Ответ к предыдущей задаче для новичков.

def zeros(n):
return 0 if n < 5 else n / 5 + zeros(n / 5)

Подумайте также как данную задачу можно решить без использования рекурсии. Также подумайте, как можно ее обобщить на другие системы счисления.

#pythonзадача #coбес
Задача для новичков.

Напишите функцию под названием in_array(), которая принимает два массива со строками, a1 и a2, и возвращает отсортированный в лексикографическом порядке массив r, состоящий из строк из массива a1, которые все являются подстроками строк из массива a2.

Примеры работы данной функции:

a1 = ["arp", "live", "strong"]
a2 = ["lively", "alive", "harp", "sharp", "armstrong"]
in_array(a1, a2) --> ["arp", "live", "strong"]
a1 = ["tarp", "mice", "bull"]
a2 = ["lively", "alive", "harp", "sharp", "armstrong"]
in_array(a1, a2) --> []

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

def in_array(a1, a2):
return sorted({sub for sub in a1 if any(sub in s for s in a2)})

#pythonзадача #coбес
Задача для новичков.

Напишите функцию под названием persistence(), которая принимает положительное целое число num и возвращает его мультипликативную стойкость. Мультипликативной стойкостью называется количество перемножений всех цифр числа, после которого получается число из одной цифры.

Примеры работы данной функции:

persistence(39) --> 3 так как 3*9 = 27, 2*7 = 14, 1*4 = 4, а 4 состоит из одной цифры.
persistence(999) --> 4 так как 9*9*9 = 729, 7*2*9 = 126, 1*2*6 = 12 и наконец 1*2 = 2
persistence(4) --> 0
так как 4 и так состоит из одной цифры.

Присылайте ваше решения в комментарии к этому посту. Решение - сегодня вечером.

#pythonзадача #coбес
Ответ к предыдущей задаче для новичков.

from functools import reduce

def persistence(n):
if len(str(n)) == 1:
return 0
else:
return 1 + persistence(reduce(lambda a, b : a * b, [int(i) for i in str(n)]))

Также подумайте как можно решить данную задачу без использования рекурсии.

#pythonзадача #coбес
Тест. Словари Python для профессионалов

Тест состоит из 10 вопросов. Поскольку это повышенный уровень, большинство вопросов требуют более углубленных знаний языка Python и опыта работы с ним, так что если что-то не получается, советуем не отчаиваться, а продолжать свое обучение.