python_practics
5.28K subscribers
1.85K photos
205 videos
119 files
60 links
Python - обучающие материалы, полезные советы и статьи.

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/python_practics
Download Telegram
Преобразовать арабское число в римское

Преобразует число в обычной десятичной («арабской») записи в форму римского числа. Работает со значениями от 1 до 3999 включительно, возвращает строку (str).

Сначала создаётся список кортежей вида (число, его римская запись). Далее цикл бежит по нему и с помощью функции divmod() производит целочисленное деление с остатком, меняя входящее число на остаток. Соответствующие результаты деления умножаются на строку римской записи и присоединяются к итоговой строке res.

#полезные_сниппеты

@python_practics
28👍10👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем красивую анимацию на модуле turtle

   import turtle

def draw_attractive_design1():
colors = ["red", "orange", "yellow", "green", "blue", "purple"]
pen = turtle.Turtle()
pen.speed(10)
turtle.bgcolor("black")
pen.pensize(2)

for i in range(180):
pen.color(colors[i % 6])
pen.forward(200)
pen.right(61)
pen.forward(100)
pen.right(120)
pen.forward(100)
pen.right(61)
pen.forward(200)
pen.right(181)

pen.hideturtle()

draw_attractive_design1()

turtle.done()

#sandbox

@python_practics
💩8👍7🥱3👎1
Задача:

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

Пример:

   unique_in_order([1, 2, 2, 3, 3])   == [1, 2, 3]
unique_in_order((1, 2, 2, 3, 3)) == [1, 2, 3]

#задачник

@python_practics
👍9🥱3🌚2
Fastcore — недооцененная, но полезная библиотека Python

fastcore — это основа многих проектов fast.ai. Самое главное: fastcore расширяет Python, стремясь к устранению шаблонного кода и добавлению полезной функциональности для общих задач.

Чем интересна fastcore:

• ознакомление с идеями из других языков прямо в Python. Fastcore расширяет Python, чтобы включить в него паттерны из разных языков: Julia, Ruby и Haskell;

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

• изучение Python: fastcore расширяет Python, в этом процессе проявляются многие продвинутые понятия. Для мотивированных людей это прекрасный способ увидеть многое о внутренней работе языка.

Подробнее👇

#фреймворки_библиотеки

@python_practics
👍7🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем красивую анимацию на модуле turtle

   import turtle

def draw_attractive_design4():
colors = ["red", "orange", "yellow", "green", "blue", "purple"]
pen = turtle.Turtle()
pen.speed(10)
turtle.bgcolor("black")
pen.pensize(2)

size = 20

for i in range(300):
pen.color(colors[i % 6])
pen.forward(size)
pen.left(59)
pen.forward(size)
pen.left(59)
pen.forward(size)
pen.left(59)
pen.forward(size)
pen.left(121)
size += 2

pen.hideturtle()


draw_attractive_design4()

turtle.done()

#sandbox

@python_practics
🥱12👍4🔥3👎2💩1
Кастомные эмодзи для Telegram

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

В этой статье автор рассказал, как из обычного шрифта, сделать уникальный набор эмозди и добавить его в телеграм.

Подробнее по ссылке👇

#статьи

@python_practics
👍7
😁161
Django 3.0. Практика создания веб-сайтов на Python

Книга посвящена созданию веб-сайтов на языке Python с использованием веб-фреймворка Django 3.0. Рассмотрены новинки Django 3.0 и дано наиболее полное описание его инструментов: моделей, контроллеров, шаблонов, средств обработки пользовательского ввода, включая выгруженные файлы, разграничения доступа, посредников, сигналов, инструментов для отправки электронной почты, кэширования и пр.

Книга в формате pdf👇

#курсы_книги

@python_practics
🔥9👍21
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем красивую анимацию на модуле turtle

   import turtle
turtle.tracer(1, 0)
for i in range(360):
turtle.forward(i)
turtle.left(59)
turtle.exitonclick()

#sandbox

@python_practics
👍9💩7🗿2🤬1
Способы «выстрелить себе в ногу» в Python

«Выстрелить себе в ногу» означает следующее: «Можно написать команду или конструкцию, которая сломает нормальное поведение программы или системы (или будет выполняться совершенно не так, как предполагалось), и при этом компилятор/интерпретатор это съест и не остановит исполнение кода». Иными словами, это возможность навредить себе необдуманными действиями.

Автор статьи разобрал шесть типичных ошибок новичков с примерами кода и нашёл решение каждой.

Подробнее по ссылке👇

#статьи
👍11
Внимание! - Вопрос!

Как получить список атрибутов объекта?

Функция dir возвращает список строк – полей объекта. Поле __dict__ содержит словарь вида {поле -> значение}.

#вопросы_из_собеседований

@python_practics
👍10
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем красивую анимацию на модуле turtle

   import turtle  
import colorsys
t = turtle.Turtle()
turtle.Screen().bgcolor("black")
t.speed(100)
n = 36
h = 0
for i in range(460):
c = colorsys.hsv_to_rgb(h,1,0.9)
h+=1/n
t.color(c)
t.left(145)
for i in range(5):
t.forward(300)
t.left(150)
turtle.done()

#sandbox

@python_practics
🥱7👍5💩4
Каким будет результат выполнения кода?

print( type(10) is int )
Anonymous Quiz
74%
True
8%
False
6%
None
12%
Error
👍10
Создать список дат из диапазона

Этот код получает две даты (начальную и конечную) и создаёт список из дат между ними, включая начальную и исключая последнюю.

Для получения дней между начальной и конечной датой используется datetime.timedelta.days.

#полезные_сниппеты

@python_practics
👍13
This media is not supported in your browser
VIEW IN TELEGRAM
Рисуем персонажа из Among Us на модуле turtle

Полный код вы сможете посмотреть по ссылке👇

#sandbox

@python_practics
👍11🥰3💩2🤡2
Задача:

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

Пример:

   "This is an example!" ==> "sihT    si na !elpmaxe"
"double spaces" ==> "elbuod secaps"

#задачник

@python_practics
👍5🥱21