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

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

@anothertechrock

РКН: https://kurl.ru/Jhcwp
加入频道
Статья дня. Менеджер версий 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 #решение #проектэйлера
Кодинг-марафон. Решение Задачи 9

Код функции, возвращающей строку - ASCII-рисунок ромба, можно посмотреть на сайте наших партнеров из pythonist.ru.

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

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

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

Привет, друзья! Наш марафон подошел к концу. Мы представляем вам последнюю, десятую задачу. Решения принимаются до 12:00 мск 26 августа.

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

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

Задание:

Для транспортирования материалов из цеха А в цех В используется конвейер. Материалы упаковываются в одинаковые контейнеры и размещаются на ленте один за одним в порядке изготовления в цехе А.

Каждый контейнер имеет степень срочности обработки в цехе В — float-значение, где наименьшее означает наивысший приоритет. То есть приоритет 1.0 должен выполняться раньше, чем 9.0.

Для упорядочивания контейнеров по степени срочности используют накопитель, который находится в конце конвейера перед входом в цех В.

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

- накопитель перемещает первый контейнер из ленты в цех В;
- накопитель перемещает первый контейнер из ленты в склад (в складе каждый следующий контейнер помещается на предыдущий);
- накопитель перемещает верхний контейнер из склада в цех В.

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

Сигнатура: def work(tasks: list) -> bool: принимает на вход список float и возвращает булин.

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

Примеры:

work([2.9, 2.1]) == True
work([5.6, 9.0, 2.0]) == False
work([ ]) == True
work([1, 1, 1]) == True

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

#задача #марафон