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

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

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Кодинг-марафон. Задача № 8.

Условия конкурса - в закрепленной записи канала.

Приз: 10 баллов.

Задание:

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

Если 2-й аргумент не передан, все вложенные списки должны быть распакованы.

Сигнатура: def flatten(a_list:list, depth:int=0)->list

Примечания:

- Функция не должна бросать исключений!
- Глубина распаковки всегда положительна (если указана).
- Если параметр глубины больше реальной вложенности, функция просто распаковывает все списки.
- Вложены могут быть только списки (не кортежи или др. контейнеры).

Примеры:

flatten([1, [2, 3]]) ➞ [1, 2, 3]
flatten([1, [2, [3]]], depth=1) ➞ [1, 2, [3]]
flatten([1, [2, [3]]], depth=2) ➞ [1, 2, 3]
flatten([1, [2, 3]], depth=100) ➞ [1, 2, 3]

Присылаем номер задачи и ссылку на код сюда - @lex_draven

#задача #марафон
Вакансия дня. Python разработчик

https://telegra.ph/Python-razrabotchik-07-30-2

Формат работы: удалёнка/офис
Условия: фулл-тайм
ЗП: от 100 000 до 200 000 руб.

Откликнуться: @radaevairina

#работа #вакансия
Видео дня. Цикл for в Python.

Содержание:
1. Как работает цикл for в Python?
2. Как с помощью цикла сделать n итераций? ф-я range().
3. Дробный шаг.
4. Как правильно "держать" индекс элемента в цикле for. enumerate.
5. Работа с несколькими элементами одновременно. zip.

Ссылка на Youtube

#видео #циклы #for
Статья дня. Менеджер версий Python.

Допустим для разработки двух проектов нам необходима вторая и третья ветка python.

В этой статье приведены проверенные примеры, ведь иногда полезно держать несколько версий python на одной машине

#читать
Вакансия дня. Middle Python разработчик

https://telegra.ph/Middle-Python-razrabotchik-07-30

Формат работы: удалёнка/офис
Условия: полная занятость
ЗП: до 130 - 150 000 руб.

Откликнуться: [email protected], @ElenaASergeeva

#работа #вакансия
Трюк дня. List Comprehension

vals = [expression
for value in collection
if condition]

Это то же самое, что и

vals = []
for value in collection:
if condition:
vals.append(expression)

Пример:

>>> even_squares = [x * x for x in range(10) if not x % 2]
>>> even_squares
[0, 4, 16, 36, 64]

#tips #tricks
Ребят, напишите отзыв по качеству контента за последний месяц. Что бы добавили, убрали, изменили:?
Задача с решением. «Диагонали числовой спирали»

Задача № 28 Проект Эйлера.

Условие:
Если начать с числа 1 и двигаться дальше вправо по часовой стрелке, образуется следующая спираль 5х5:

21 22 23 24 25
20 7 8 9 10
19 6 1 2 11
18 5 4 3 12
17 16 15 14 13

Можно убедиться, что сумма чисел в диагоналях равна 101.

Какова сумма чисел в диагоналях спирали 1001 на 1001, образованной таким же способом?

Пишите ваше решение в комментариях. Решение будет через 3 часа.

#задача28 #решение #проектэйлера
Задача с решением. «Диагонали числовой спирали»

Задача № 28 Проект Эйлера.

Смотреть решение

#задача28 #решение #проектэйлера
Кодинг-марафон. Решение Задачи 8

Код функции для распаковки вложенных списков можно посмотреть на сайте наших партнеров из pythonist.ru.

Смотреть решение

Условие конкурса в закрепе канала.

#задача #марафон
Кодинг-марафон. Задача № 9.

Условия конкурса - в закрепленной записи канала.

Приз: 10 баллов.

Задание:

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

    >> diamond('A')
A

>> diamond('B')
A
B B
A

>> diamond('D', '-')
---A---
--B-B--
-C---C-
D-----D
-C---C-
--B-B--
---A---

Сигнатура: def diamond(letter: str, background: str=' ') -> str:

Примечания:

- КАЖДАЯ строка рисунка заканчивается символом '\n',
- на вход может подаваться любая из 26 букв латинского алфавита и любой ASCII-символ как параметр background,
- предполагается, что ввод всегда валиден, не нужно проверок и исключений.

Присылаем номер задачи и ссылку на код сюда - @lex_draven

#задача #марафон
Вакансия дня. Backend Python разработчик

https://telegra.ph/Backend-Python-razrabotchik-08-10

Формат работы: удалёнка/офис
Условия: полная занятость
ЗП: 90 000-160 000 р.

Откликнуться: @still_alive_girl

#работа #вакансия
Плейлист дня. Игра "Сапер" на Python. Часть 1

Содержание:
Часть 1. Превью.
Часть 2. Создаем игровое поле.
Часть 3. Создаем класс MineSwepper.
Часть 4. Класс MyButton.
Часть 5. Расставляем мины.
Часть 6. Обработка нажатия кнопок.
Часть 7. Создаем барьерные элементы.
Часть 8. Подсчитываем мины вокруг.

Продолжение в следующем выпуске.

#видео #pygame
Статья дня. Бинарные модули для Python.

Скорости Python не всегда хватает для тяжелых математических расчетов.

В этой статье рассматриваются возможности бинарных модулей и расширений.

#читать #binary
Вакансия дня. Backend Python developer

https://telegra.ph/Backend-Python-developer-08-10

Формат работы: удалёнка
Условия: полная занятость
ЗП: от 120 000 до 140 000 р.

Откликнуться: @wbtech_team

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

>>> xs = {'a': 4, 'b': 3, 'c': 2, 'd': 1}

>>> sorted(xs.items(), key=lambda x: x[1])
[('d', 1), ('c', 2), ('b', 3), ('a', 4)]

Или:

>>> import operator
>>> sorted(xs.items(), key=operator.itemgetter(1))
[('d', 1), ('c', 2), ('b', 3), ('a', 4)]

#tips #tricks
Задача с решением. «Различные степени»

Задача № 29 Проект Эйлера.

Условие:
Рассмотрим все целочисленные комбинации a^b для 2 ≤ a ≤ 5 и 2 ≤ b ≤ 5 (прим.: ^ — знак возведения в степень):

2^2=4, 2^3=8, 2^4=16, 2^5=32
3^2=9, 3^3=27, 3^4=81, 3^5=243
4^2=16, 4^3=64, 4^4=256, 4^5=1024
5^2=25, 5^3=125, 5^4=625, 5^5=3125

Если их расположить в порядке возрастания, исключив повторения, мы получим следующую последовательность из 15 различных членов:

4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125

Сколько различных членов имеет последовательность a^b для 2 ≤ a ≤ 100 и 2 ≤ b ≤ 100?

Пишите ваше решение в комментариях. Решение будет через 3 часа.

#задача29 #решение #проектэйлера
Задача с решением. «Различные степени»

Задача № 29 Проект Эйлера.

Смотреть решение

#задача29 #решение #проектэйлера