Python Turbo. Уютное сообщество Python разработчиков.
10.5K subscribers
246 photos
8 videos
1 file
186 links
Трюки и полезности Python.
Никакой воды, только полезные материалы.
Марафоны по кодингу, разбор вашего кода в чате.

Реклама: @anothertechrock

Перечень РКН: https://kurl.ru/gursU
Download Telegram
🍳 Задача по Python #28

Описание

Даны два массива, inorder и preorder. Оба массива имеют размер n. В первом массиве хранятся значения узлов дерева в порядке обхода бинарного дерева поиска. Во втором массиве хранятся значения узлов дерева в порядке обхода в ширину. Из этих двух массивов нужно собрать изначальное бинарное дерево.

Примеры
build_tree([2,1],[1,2]) # [1,2]
build_tree([1,2],[1,2]) # [1,None,2]

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
👍1
🍳 Задача по Python #29

Описание

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

Примеры
func(10) # [1010, 2]
func(25) # [11001, 3]

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
🔥21👏1
🐥 Задача по Python #30

Описание

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

Примеры
func([5, -2, 10, -8, 3]) # 6.0
func([-1, -3, -7]) # None

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
🐥 Задача по Python #31

Описание

Напишите функцию sum_of_squares, которая принимает список чисел в качестве входного аргумента и возвращает сумму квадратов всех элементов списка.

Примеры
sum_of_squares([1, 2, 3, 4, 5]) # 55 (1^2 + 2^2 + 3^2 + 4^2 + 5^2 = 55)

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
👍2
🐥 Задача по Python #32

Описание

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

Шахматная доска имеет координаты строк от A до H (вертикальные оси) и числа от 1 до 8 (горизонтальные оси).

Примеры
func('D', 5) # black

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
👍5
🐥 Задача по Python #33

Описание

Напишите функцию scramble(str1, str2), которая возвращает True, если часть символов str1 может быть переставлена так, чтобы соответствовать str2, в противном случае возвращает False.

Примечания

Будут использоваться только строчные буквы (a-z). Пунктуация и цифры не используются.
Необходимо учитывать производительность.

Примеры
scramble('rkqodlw', 'world') # True
scramble('katas', 'steak') # False

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
👍4👏1
🍳 Задача по Python #34

Описание

Даны 2 числа n, m, количество городов и количество дорог соответственно. В следующих m строках даются пути из одного города в другой. Нужно определить сколькими способами можно попасть из города 1 в город N. (Дороги имеют одностороннее движение, то есть если из первого города можно попасть во второй город, то это не значит, что можно попасть из второго в первый)

Примеры
3 3

1 2
2 3
1 3
# 2

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
👏2🤯1
🍳 Задача по Python #35

Описание

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

Примеры
calculate_rpn('5 3 + 8 * 4 /') # 16

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
🥰41
🐣 Задача по Python #37

Описание

Напишите генератор, который будет генерировать последовательность чисел Фибоначчи, но с ограничением по максимальному значению. Генератор должен прекратить работу, когда очередное число Фибоначчи превысит заданное ограничение.

Примеры
for num in fibonacci_with_limit(100):
print(num) # 1 1 2 3 5 8 13 21 34 55 89


Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
2
🥚 Задача по Python #36

Описание

Напишите функцию find_average, которая будет принимать список чисел и возвращать среднее значение всех элементов списка.

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

Примеры
find_average([5, 10, 15, 20]) # 12.5

Свой вариант решения в комментарии 💭
Кодом делиться через pastebin.org или repl.it.

#задачи
1👍1
🍳 Задача по Python #38

Описание

Нужно написать функцию calculate, которая на вход принимает единственное действительное число A, а на выход возвращает такое число x, которое удовлетворяет выражению x²+√x = A. Ответ должен быть с относительной погрешностью 10^(-6).

Примеры
calculate(2.0) # 1.0
calculate(15.6) # 3.69823217


Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
👍4👏1
🐥 Задача по Python #39

Описание

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

Примеры
longest_sequence("aaabbBccc")     # 3 (ccc)
longest_sequence("Hello, world!") # 2 (ll)
longest_sequence("aabbbccddddd") # 5 (dd)
longest_sequence("xyz") # 1 (каждый символ - отдельная последовательность)


Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
🐥 Задача по Python #40

Описание

Напишите функцию rgb_to_hex(r: int, g: int, b: int) -> str, которая принимает значения красного (r), зеленого (g) и синего (b) компонентов цвета (каждое в диапазоне от 0 до 255) и возвращает строку, представляющую цвет в HEX формате.

Примеры
rgb_to_hex(255, 192, 0) # ffc000
rgb_to_hex(0, 128, 255) # 0080ff

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
👍1
🍳 Задача по Python #41

Описание

Вам предоставляется список целых чисел и индекс n. Ваша задача - поменять местами значения первого и последнего элементов списка, второго и предпоследнего элементов списка и так далее до индекса n.

Примеры
reverse_indices([1, 2, 3, 4, 5, 6], 2) # [3, 2, 1, 4, 5, 6]

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
🔥1
🐥 Задача по Python #42

Описание

Реализуйте функцию count_unique_elements, которая будет подсчитывать количество уникальных элементов в списке. Уникальные элементы не должны повторяться в подсчете, даже если они встречаются несколько раз.

Примеры
count_unique_elements([1, 2, 2, 3, 3, 3, 4, 4, 4, 4])  # 4
count_unique_elements(['apple', 'banana', 'apple', 'cherry']) # 3
count_unique_elements([]) # 0

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
🔥3🥱1
🐓 Задача по Python #43

Описание

Напишите функцию reverse_anagrams, которая принимает слово и список слов. Функция должна вернуть подсписок из anagrams, который состоит из слов, являющихся анаграммами слова.

Анаграмма - это слово или фраза, составленные из букв другого слова или фразы, при сохранении исходного порядка букв. Например, "listen" и "silent" - это анаграммы.

Примеры
reverse_anagrams("listen", ["enilst", "tac", "netsil", "silent"]) # ["netsil", "silent"]
reverse_anagrams("triangle", ["elgnirta", "square", "angeltir", "glenitar"]) # ["angeltir", "glenitar"]

Свой вариант решения в комментарии 💭
Кодом делиться через
pastebin.org или repl.it.

#задачи
👍31
🎓 Задача по Python #44

Описание


Напишите программу, которая проверяет, является ли число числом Армстронга.

Число Армстронга — натуральное число, которое в данной системе счисления равно сумме своих цифр, возведённых в степень, равную количеству его цифр.

Пример:


3**3 + 7**3 + 1**3 = 371

Решение:

def armstrong_number(num):
sum = 0
length = len(str(num))
for digit in list(str(num)):
sum += int(digit)**length
return sum == num


Свой вариант решения в комментарии 💬

#задачи
👍4
🎓 Задача по Python #45

Описание


Напишите программу, которая проверит, что две строки являются анаграммами.

Анаграмма - слово, которые получается путем перестановки букв другого слова.

Например:

мука - > кума

Решение:

def is_anagram(string1: str, string2: str):
return sorted(string1) == sorted(string2)

print(is_anagram('night', 'thing'))
print(is_anagram('cat', 'car'))


Свой вариант решения в комментарии 💬

#задачи
👍61
🎓 Задача по Python #46

Описание:

Напишите программу, которая проверит, что число является совершенным.
Совершенное число - натуральное число, равное сумме всех своих собственных делителей.
Например, число 6 равно сумме своих собственных делителей 1 + 2 + 3.

Примеры совершенных чисел:

6, 28, 496, 8128

Решение:

def get_divisors(num):
divisors = []
for i in range(1, num):
if num % i == 0:
divisors.append(i)
return divisors

def perfect_num(num):
divisors = get_divisors(num)
return num == sum(divisors)

print(perfect_num(6))
print(perfect_num(28))
print(perfect_num(496))
print(perfect_num(8128))

Свой вариант решения в комментарии 💬

#задачи
👏4👍1
🎓 Задача по Python #47

Описание
:

Напишите программу, которая удалит переданный символ из строки.
Сделайте это без использования метода .replace().

Свой вариант решения в комментарии 💬

#задачи
👍1