Python Learning
34.6K subscribers
1.91K photos
8 videos
7 files
913 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://yangx.top/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
加入频道
Рисуем звезду при помощи 🐢

Результат нашего кода находится в посте выше.

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

Подробнее можно почитать здесь.
👍13🎉6
#Вопросы_с_собеседования

Приведите пример генератора словарей

Мы создаем словарь с буквами алфавита в качестве ключей и индексами в качестве значений.
🎉15👍8🔥1
Сравниваем курс доллара и евро

forex-python позволяет получать данные о курсе валют в определённое время и конвертировать одну валюту в другую.

Установка пакета - pip install forex-python

В нашем примере мы сравниваем курс доллара и курс евро. Как мы видим, сейчас доллар дороже в 1.00080064051241 раз, что довольно-таки необычно, так как до июля 2022 года на протяжении 20 лет евро ни разу не позволял доллару себя обогнать.
👍212😱2🎉1
Как строить красивые графики на Python с Seaborn

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

https://habr.com/ru/amp/post/540526/
👍11🎉1
#Вопросы_с_собеседования

Как объединить два списка в список кортежей?

Для объединения в список кортежей можно использовать функцию zip, причем не только двух, но трех и более списков.
👍34
#Вопросы_с_собеседования

Что выведет код с картинки?

В любом замыкании в Python переменные связываются по имени. Таким образом, в приведённой выше строке кода будет выведено следующее: [2, 2, 2].

Если бы вы хотели, чтобы вывод был [0, 1, 2], то выход из ситуации — создание отдельной функции или передача аргументов по их имени.
flist = []
for i in range(3):
flist.append(lambda i = i : i)
answer = [f() for f in flist]
print(answer)
.
👍24🤔122
Определяем тип изображения с помощью Python

Установка модуля - pip install imghdr

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

Подробнее можно почитать здесь.
🎉17👍9🤔2😢1
🤔12👍3🔥1
Что выведет код сверху?
Anonymous Quiz
32%
0
10%
4
19%
5
39%
Error
🤔29😱11👍7
👍13🎉52🏆1
Обрезаем фотографии с помощью Python

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

Координаты обрезанной поверхности представлены диагональными координатами. При этом первые две точки находятся (x, y) от верхней левой диагональной точки, а следующие две точки (x2, y2) также являются диагональной точкой снизу справа.

Фотографии до и после изменения изображения представлены в посте выше.
👍17🎉4
Инкапсуляция

Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным). Инкапсуляция делает некоторые из компонент доступными только внутри класса.

Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.

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

Двойное подчеркивание в начале имени атрибута даёт большую защиту: атрибут становится недоступным по этому имени. Однако полностью это не защищает, так как атрибут всё равно остаётся доступным под именем _ИмяКласса__ИмяАтрибута.
👍36
#Вопросы_с_собеседования

Что будет в результате выполнения данного кода?

Ответ:
list1 = [10, 'a']
list2 = [123]
list3 = [10, 'a']

Объяснение:
Многие могут ошибочно предположить, что list1 будет равен [10], а list3 будет равен ['a'], думая, что всякий раз при вызове функции extendList аргумент list будет равен значению по умолчанию [].

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

Таким образом, list1 и list3 имеют дело с одним и тем же списком по умолчанию, в то время как list2 использует пустой список, переданный ему во втором аргументе.
👍24
Получаем информацию о системе своего компьютера с помощью Python

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

Установка модуля - pip install platform

Подробнее можно почитать здесь.
👍25🎉8🆒1
#Вопросы_с_собеседования

Что будет в результате выполнения данного кода?

Ответ:
Результатом выполнения данного кода будет [6, 6, 6, 6], а не [0, 2, 4, 6].

Это объясняется тем, что замыкания в Python работают по принципу позднего связывания. Это означает, что значения переменных, используемых в замыканиях, ищутся во время вызова внутренней функции. Поэтому, когда вызывается любая из функций, возвращаемых multipliers(), значение i ищется исключительно в области видимости этой функции в данный момент. А значение i, вне зависимости от того, какая из функций вызывается, после завершения цикла for всегда равно 3. Таким образом, каждая возвращаемая функция умножает значение, которое ей передано, на 3, а поскольку в приведенном выше коде передается значение 2 , все они возвращают значение 6 (то есть 3 x 2).
👍28🤔7
This media is not supported in your browser
VIEW IN TELEGRAM
Как выглядело бы Московское метро в трехмерном мире

Смотреть статью
🔥37😱8🎉8👍2😢2
#Вопросы_с_собеседования

Какие нюансы есть в использовании чисел как ключей?

Числовые ключи в словарях подчиняются правилам сравнения чисел. Таким образом, int(1) и float(1.0) считаются одинаковым ключом. Однако из-за того, что значения типа float сохраняются приближенно, не рекомендуется использовать их в качестве ключей.
👍19🎉7