🤔29😱11👍7
Обрезаем фотографии с помощью Python
Pillow также может использоваться для обрезки изображения, при этом вы можете получить производный прямоугольник выбранного изображения, указав координаты, по которым преобразовать изображение.
Координаты обрезанной поверхности представлены диагональными координатами. При этом первые две точки находятся (x, y) от верхней левой диагональной точки, а следующие две точки (x2, y2) также являются диагональной точкой снизу справа.
Фотографии до и после изменения изображения представлены в посте выше.
Pillow также может использоваться для обрезки изображения, при этом вы можете получить производный прямоугольник выбранного изображения, указав координаты, по которым преобразовать изображение.
Координаты обрезанной поверхности представлены диагональными координатами. При этом первые две точки находятся (x, y) от верхней левой диагональной точки, а следующие две точки (x2, y2) также являются диагональной точкой снизу справа.
Фотографии до и после изменения изображения представлены в посте выше.
👍17🎉4
Инкапсуляция
Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным). Инкапсуляция делает некоторые из компонент доступными только внутри класса.
Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.
Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.
Двойное подчеркивание в начале имени атрибута даёт большую защиту: атрибут становится недоступным по этому имени. Однако полностью это не защищает, так как атрибут всё равно остаётся доступным под именем _ИмяКласса__ИмяАтрибута.
Инкапсуляция — ограничение доступа к составляющим объект компонентам (методам и переменным). Инкапсуляция делает некоторые из компонент доступными только внутри класса.
Инкапсуляция в Python работает лишь на уровне соглашения между программистами о том, какие атрибуты являются общедоступными, а какие — внутренними.
Одиночное подчеркивание в начале имени атрибута говорит о том, что переменная или метод не предназначен для использования вне методов класса, однако атрибут доступен по этому имени.
Двойное подчеркивание в начале имени атрибута даёт большую защиту: атрибут становится недоступным по этому имени. Однако полностью это не защищает, так как атрибут всё равно остаётся доступным под именем _ИмяКласса__ИмяАтрибута.
👍36
#Вопросы_с_собеседования
❓Что будет в результате выполнения данного кода?
Ответ:
Многие могут ошибочно предположить, что
Однако, в действительности новый пустой список по умолчанию создается только один раз при определении функции. И затем этот список последовательно используется всякий раз, когда функция вызывается без второго аргумента. Это происходит потому, что значения по умолчанию вычисляются при определении функции, а не при ее вызове.
Таким образом,
❓Что будет в результате выполнения данного кода?
Ответ:
list1 = [10, 'a']
list2 = [123]
list3 = [10, 'a']
Объяснение:Многие могут ошибочно предположить, что
list1
будет равен [10]
, а list3
будет равен ['a']
, думая, что всякий раз при вызове функции extendList
аргумент list
будет равен значению по умолчанию []
.Однако, в действительности новый пустой список по умолчанию создается только один раз при определении функции. И затем этот список последовательно используется всякий раз, когда функция вызывается без второго аргумента. Это происходит потому, что значения по умолчанию вычисляются при определении функции, а не при ее вызове.
Таким образом,
list1
и list3
имеют дело с одним и тем же списком по умолчанию, в то время как list2
использует пустой список, переданный ему во втором аргументе.👍24
Получаем информацию о системе своего компьютера с помощью Python
Получение системной информации для вашей системы может быть легко выполнено используемой операционной системой, скажем, Ubuntu. Но не будет ли забавно получить эту системную информацию с помощью скрипта Python?
Установка модуля -
Получение системной информации для вашей системы может быть легко выполнено используемой операционной системой, скажем, Ubuntu. Но не будет ли забавно получить эту системную информацию с помощью скрипта Python?
Установка модуля -
pip install platform
Подробнее можно почитать здесь.👍25🎉8🆒1
#Вопросы_с_собеседования
❓Что будет в результате выполнения данного кода?
Ответ:
Результатом выполнения данного кода будет
Это объясняется тем, что замыкания в Python работают по принципу позднего связывания. Это означает, что значения переменных, используемых в замыканиях, ищутся во время вызова внутренней функции. Поэтому, когда вызывается любая из функций, возвращаемых
❓Что будет в результате выполнения данного кода?
Ответ:
Результатом выполнения данного кода будет
[6, 6, 6, 6]
, а не [0, 2, 4, 6]
.Это объясняется тем, что замыкания в Python работают по принципу позднего связывания. Это означает, что значения переменных, используемых в замыканиях, ищутся во время вызова внутренней функции. Поэтому, когда вызывается любая из функций, возвращаемых
multipliers()
, значение i
ищется исключительно в области видимости этой функции в данный момент. А значение i
, вне зависимости от того, какая из функций вызывается, после завершения цикла for
всегда равно 3
. Таким образом, каждая возвращаемая функция умножает значение, которое ей передано, на 3
, а поскольку в приведенном выше коде передается значение 2
, все они возвращают значение 6
(то есть 3 x 2
).👍28🤔7
#Вопросы_с_собеседования
❓Какие нюансы есть в использовании чисел как ключей?
Числовые ключи в словарях подчиняются правилам сравнения чисел. Таким образом, int(1) и float(1.0) считаются одинаковым ключом. Однако из-за того, что значения типа float сохраняются приближенно, не рекомендуется использовать их в качестве ключей.
❓Какие нюансы есть в использовании чисел как ключей?
Числовые ключи в словарях подчиняются правилам сравнения чисел. Таким образом, int(1) и float(1.0) считаются одинаковым ключом. Однако из-за того, что значения типа float сохраняются приближенно, не рекомендуется использовать их в качестве ключей.
👍19🎉7
🎉29👍11😱3🤔2
8 технологий, которые должен знать каждый Python-разработчик
Джентльменский набор пайтон-разработчика, который пригодится вне зависимости от того, куда вы пойдете: в инжиниринг, машинное обучение или бэкенд-разработку.
Смотреть статью
Джентльменский набор пайтон-разработчика, который пригодится вне зависимости от того, куда вы пойдете: в инжиниринг, машинное обучение или бэкенд-разработку.
Смотреть статью
Библиотека программиста
🐍 8 технологий, которые должен знать каждый Python-разработчик
Джентльменский набор пайтон-разработчика, который пригодится вне зависимости от того, куда вы пойдете: в инжиниринг, машинное обучение или бэкенд-разработку.
👍19🔥5❤1
#Вопросы_с_собеседования
❓Что значит *args, **kwargs? И зачем нам их использовать?
Мы используем *args, когда неуверены, сколько аргументов будет передано функции, или если хотим передать сохраненный список или кортеж аргументов функции.
**kwargs используется, когда мы не знаем, сколько аргументов ключевых слов будет передано, а также он может быть использован для передачи значений словаря в качестве аргументов ключевых слов. Идентификаторы args и kwargs необязательны, вы можете изменить их на другие, типа *другой **пример, но лучше использовать имя по умолчанию.
❓Что значит *args, **kwargs? И зачем нам их использовать?
Мы используем *args, когда неуверены, сколько аргументов будет передано функции, или если хотим передать сохраненный список или кортеж аргументов функции.
**kwargs используется, когда мы не знаем, сколько аргументов ключевых слов будет передано, а также он может быть использован для передачи значений словаря в качестве аргументов ключевых слов. Идентификаторы args и kwargs необязательны, вы можете изменить их на другие, типа *другой **пример, но лучше использовать имя по умолчанию.
👍20🎉7🤔5
👍36🤔24🏆8🎉4😢3🍾2🆒2
Узнаем расстояние между городами
Геодезическое расстояние – это длина кратчайшего пути между двумя точками на любой поверхности Земли. В следующем примере мы покажем, как пользователь может вычислить геодезическое расстояние на основе данных широты и долготы.
В нашем примере мы узнаем, ято расстояние между городами Нью-Йорк и Техас 2507 километров.
Геодезическое расстояние – это длина кратчайшего пути между двумя точками на любой поверхности Земли. В следующем примере мы покажем, как пользователь может вычислить геодезическое расстояние на основе данных широты и долготы.
В нашем примере мы узнаем, ято расстояние между городами Нью-Йорк и Техас 2507 километров.
👍17❤4🎉2😱1
PyQt6 — полное руководство для новичков
PyQt — это библиотека Python для создания приложений с графическим интерфейсом с помощью инструментария Qt.
Смотреть статью
PyQt — это библиотека Python для создания приложений с графическим интерфейсом с помощью инструментария Qt.
Смотреть статью
Хабр
PyQt6 — полное руководство для новичков
К старту курса по разработке на Python делимся детальным руководством по работе с современным PyQt. Чтобы читать было удобнее, мы объединили несколько статей в одну: Первое приложение Слоты и сигналы...
🎉28👍9🍾3❤2
Узнаем в какой части света находится страна
countryinfo - модуль Python для возврата данных о странах, информации ISO и штатах/провинциях внутри них.
Установка пакета - pip install countryinfo.
Документацию пакета можно найти здесь.
countryinfo - модуль Python для возврата данных о странах, информации ISO и штатах/провинциях внутри них.
Установка пакета - pip install countryinfo.
Документацию пакета можно найти здесь.
👍24🎉5😱2❤1😢1