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
Транспонировать матрицу

В простейшем случае двумерная матрица может быть задана списком из нескольких списков одинаковой длины, которые представляют собой строки матрицы. Если вам требуется «повернуть на 90 градусов» такую матрицу или превратить строки в столбцы (транспонировать, как говорят математики), то вот короткий код.

Обратите внимание, что в итоговом списке элементами (то есть строками новой матрицы) будут кортежи — так работает используемая здесь функция zip().

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

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

   import turtle
win = turtle.Screen()
win.bgcolor('black')
color = ['red', 'blue', 'yellow', 'green', 'lightblue', 'orange','lightgreen']
tort = turtle.Turtle()
for itr in range(360):
tort.color(color[itr%7])
tort.forward(itr)
tort.left(62)

#sandbox
👍9🥱4
Создайте функцию, которая отвечает на вопрос «Вы играете на банджо?».

Если ваше имя начинается с буквы «R» или строчной «r», вы играете на банджо!
Функция принимает имя в качестве единственного аргумента и возвращает одну из следующих строк:

name + " plays banjo"
name + " does not play banjo"

#задачник

@python_practics
👍9🥱9
Flask

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

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

Ключевые особенности Flask:

• встроенный сервер разработки и отладчик;
• диспетчеризация запросов в RESTful-стиле;
• встроенная поддержка модульного тестирования;
• использование шаблонизатора Jinja2;
• 100%-ная совместимость с WSGI 1.0;
• множество расширений, предоставляемых сообществом.

Про этот и другие фреймворки вы можете прочитать по ссылке ниже👇

#фреймворки_библиотеки
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем красивую анимацию на модуле turtle

   from turtle import *
color('red', 'yellow')
begin_fill()
while True:
forward(200)
left(170)
if abs(pos()) < 1:
break
end_fill()
done()

#sandbox

@python_practics
👍9🥱8👎1
Области видимости в Python

Область видимости (scope) — это та часть кода, где переменная доступна, открыта и видима.

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

1. + 2. Локальная (Local) и глобальная (Global)

   global = "Глобальная переменная"
def func():
local = "Локальная переменная"
print(local)

print(global)
func()... Глобальная переменная... Локальная переменная

3. Охватывающая (Enclosing)

 def func1():
enclosing = "Первый уровень"
print(enclosing)

def func2():
nonlocal enclosing
enclosing = "Второй уровень"

func2()
print(name)

func1()
... Первый уровень
... Второй уровень

4. Встроенная (Built-in)

Скрипт.py
print("File1 __name__ = %s" %__name__)
... Скрипт

Подробнее👇

#статьи
👍101
А где работа?

#мемчики

@python_practics
🤣35🤔8😢2🎉1
Python. К вершинам мастерства. Второе издание

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

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

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

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

   t = turtle.Turtle()
s = turtle.Screen()
s.bgcolor('black')
t.speed('fastest')
for x in range(200):
t.pencolor('blue')
t.width(x/100 + 1)
t.forward(x)
t.left(79)

#sandbox

@python_practics
🥱9🤩8👎2
Дорожная карта Data Science 2023: пошаговый гайд

Самое полезное в роадмапах для программистов это то, что необязательно осваивать все перечисленное, чтобы продвинуться от Junior-специалиста к Middle и выше. Спрос на DS достаточно высок, чтобы ценили даже хорошо освоенную часть карты навыков. В этой статье автор разобрал такие сферы знаний как:

• программирование;
• сбор и хранение данных;
• статистика и математика;
• дата-инжиниринг;
• машинное обучение;
• бизнес-аналитика;
• глубокое обучение.

А также рассказал про разновидности дата-сайентистов и объяснил на какие сферы знаний лучше обратить своё внимание каждому из подвидов DS.

Подробнее👇

#статьи

@python_practics
👍8🤔2
Внимание! - Вопрос!

В чем отличие [x for x in y] от (x for x in y)?

Первое выражение возвращает список (списковое включение), второе – генератор.

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

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

   import turtle 
t = turtle.Turtle()
s = turtle.Screen()
s.bgcolor('black')
t.speed('fastest')
colors=["red","orange","yellow","green","blue","purple"]
for x in range(1200):
t.color(colors[x%6])
t.forward(x*.5)
t.left(149)

#sandbox

@python_practics
🥱11🥰10👍3
С помощью какой функции в python записывается бесконечный цикл?
Anonymous Quiz
78%
while true
20%
while for
3%
while false
🥱10🔥5👍2👎1🤯1💩1
Сделать список плоским

Ох уж эти списки, состоящие из списков. Как бы их сделать попроще, выстроить в один ряд? Для этого тоже есть решение.

В третьей строке код проверяет, не является ли элемент списком. Если да, то использует метод extend() для расширения этим элементом итогового списка, если нет — то присоединяет его как одиночный элемент методом append().

Также в этой строке функция вызывает сама себя и, в случае списков, состоящих из списков, «проваливается» в них до тех пор, пока не доберётся до элементов, не являющихся списками. Это называется рекурсией.

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

@python_practics
👍13🤯2