Python Hub - сборище Питонистов
1.72K subscribers
657 photos
1 video
37 files
278 links
Уголок счастья для любого питониста.

Сотрудничество или заказы: @leshunist

https://shcoder.dev - студия разработки ShcoderDevelopment

https://t.me/pythonhub_chat - чат
Download Telegram
🔥 Отличие асинхронного кода от синхронного в Python


➡️ Синхронный код

Синхронный код - это код, который выполняется последовательно. Это означает, что каждая операция должна быть выполнена до того, как начнется следующая операция. Это может быть очень медленным, особенно когда требуется много времени для выполнения каждой операции. Например, если вы напишете код для загрузки нескольких изображений из Интернета, каждый запрос на загрузку будет выполнен последовательно, что может занять много времени.

➡️ Асинхронный код

Асинхронный код - это код, который может выполнять несколько задач одновременно. В Python асинхронный код реализуется с помощью библиотеки asyncio. Она позволяет использовать асинхронные функции и корутины для написания более эффективного кода. Например, если вы используете асинхронный код для загрузки нескольких изображений из Интернета, каждый запрос на загрузку может выполняться параллельно, что существенно ускорит процесс загрузки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Что выдаст код выше?
Anonymous Quiz
40%
1
7%
2
30%
3
0%
Ничего
14%
Error
9%
Не знаю
🫡3👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

if not not not None.
Само по себе if None —> False.
Значит if not None —> True
Значит if not not None —> False
Значит if not not not None —> True

Таким образом видим, что результат первого if будет True —> выведется 1.

Так как дальше у нас связка не с if, а с elif, то остальные проверки даже не будут проверяться.

Ответ: 1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Что выдаст код выше?
Anonymous Quiz
10%
1
42%
2
29%
1 2
13%
Ничего
4%
Error
2%
Не знаю
👍6
Конструкция for else в Python


➡️ Конструкция for else

Конструкция for else - это синтаксическая конструкция, которая позволяет выполнить блок кода else, если цикл for завершился нормально, т.е. без использования оператора break. Это может быть полезно в случаях, когда нужно выполнить некоторые действия после выполнения цикла, но только в том случае, если цикл отработал полностью.

Вот пример, который демонстрирует использование конструкции for else:

numbers = [1, 2, 3, 4, 5]
for number in numbers:
if number == 0:
break
else:
print("All numbers are non-zero")


В этом примере мы используем цикл for для прохода по списку чисел. Если в списке встречается число 0, то цикл завершается оператором break и блок кода else не выполняется. Если же все числа в списке не равны 0, то блок кода else выполнится и на экран будет выведено сообщение "All numbers are non-zero".
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

if print(1): —> принт выдаст нам 1.

Дальше разбираемся с тем, что возвращает функция print(). Она возвращает нам None, что эквивалентно False.
Получим:
if False: —> не выполняется, значит ничего внутри if не сработает.

Ответ: 1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Встроенные методы классов Python


Будем рассматривать их по порядку в общем формате.
(если нужно более подробно рассказать про какие-то методы, то пишите в предложку или в комментарии)

Начнем с init, str и len

➡️ 1. __init__

__init__
- это метод класса, который вызывается при создании нового объекта. Он используется для инициализации свойств объекта. Например, предположим, что у нас есть класс Person, который имеет свойства name и age. Мы можем инициализировать эти свойства в методе __init__ следующим образом:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age


➡️ 2. __str__

__str__
- это метод класса, который возвращает строковое представление объекта. Этот метод полезен при отладке и при выводе информации об объекте. Например, мы можем использовать метод __str__ для класса Person, чтобы получить строковое представление объекта:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def __str__(self):
return f"{self.name} ({self.age})"


➡️ 3. __len__

__len__
- это метод класса, который возвращает длину объекта. Этот метод полезен для работы с объектами, которые имеют определенную длину, например, списки или строки. Например, мы можем использовать метод __len__ для класса Person, чтобы получить количество символов в имени объекта:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def __str__(self):
return f"{self.name} ({self.age})"

def __len__(self):
return len(self.name)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

Создаем пустой список a.
Далее у нас есть цикл, который выполняется, пока кол-во элементов в списке a меньше ИЛИ равно 0.

Добавляем в список его длину (кол-во элементов в нем —> 0). У нас получается список [0]

Больше цикл while выполняться не будет, т.к. условие "цикл, который выполняется, пока кол-во элементов в списке a меньше ИЛИ равно 0." не выполняется.

На выходе выводим список a.

Ответ: [0]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
🔔 Знали, что на Python можно написать автокликер с графическим интерфейсом за 5 минут?

📹 Сделал видео, где все это показал и продемонстрировал 📹
🔥 Смотрите, используйте, комментируйте, спрашивайте! 🔥

▶️ Можно использовать в играх, где надо кликать!

https://www.youtube.com/watch?v=Xf3f-g2AMOg&ab_channel=Shcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

a — 11
b — 12.0

Первый if проверяет равенство типов переменной a и b.
a —> int (целое число)
b —> float (дробное число)

if НЕ выполнится —> переходим в else

Выводим на экран float(2) —> 2.0
Ответ: 2.0
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Что выдаст код выше?
Anonymous Quiz
0%
1
13%
2
23%
11
3%
22
43%
strstr
15%
Error
5%
Не знаю
👍41
🔥 Разница между __init__ и __new__ в Python


➡️ init метод

init - это конструктор экземпляра класса. Он вызывается после того, как объект был создан и память была выделена. Этот метод принимает только один аргумент, «self», который ссылается на экземпляр класса. В init мы обычно инициализируем атрибуты объекта, задавая им начальные значения.

class MyClass:
def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2


➡️ new метод

new - это метод класса, который вызывается, когда мы создаем новый экземпляр класса. Он создает экземпляр объекта и может изменять его состояние перед тем, как вызвать метод init. Этот метод принимает один обязательный аргумент, «cls», который ссылается на класс, а также любое количество дополнительных аргументов. Обычно new используется в случаях, когда мы хотим изменить способ создания объекта, например, создать его из другого класса или изменить его состояние до вызова init.

class MyOtherClass:
def __new__(cls, arg1):
obj = super().__new__(cls)
obj.arg1 = arg1 * 2
return obj

def __init__(self, arg1):
self.arg1 = arg1


▶️ Когда использовать каждый конструктор?

Как правило, мы используем init конструктор, чтобы инициализировать атрибуты объекта. В то же время new конструктор используется реже и обычно в случаях, когда мы хотим изменить способ создания объекта или изменить его состояние до вызова init. Например, мы можем использовать new для создания объекта из другого класса или изменения его состояния, основываясь на переданных аргументах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

a = type('hello') —> переменной а присваиваем тип текста 'hello' —> str.

Далее в print'е у нас есть запись a(1) —> str(1) , т.к. a стало равносильно str
str(1) —> "1" (текстовая единица)
"1" * 2 —> 11. (при умножении текста на число n, текст дублируется n раз.

Ответ: 11
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
Для чего нужен SQLite в Python?

SQLite - это легковесная, быстрая и надежная реляционная база данных, которая не требует какой-либо установки сервера. Она работает на всех основных операционных системах, включая Windows, macOS и Linux. SQLite может быть использован в Python для хранения данных в локальной базе данных.


Python имеет встроенный модуль sqlite3, который позволяет легко работать с базами данных SQLite. Этот модуль позволяет создавать, открывать и закрывать соединения с базой данных, выполнять запросы на чтение и запись данных, а также работать с транзакциями.

➡️ Использование SQLite в Python

SQLite может быть использован в Python для хранения данных, таких как настройки приложения, пользовательские данные и многое другое. Он может быть использован для создания локальных баз данных, которые могут быть использованы в приложениях без необходимости соединения с удаленным сервером базы данных.

➡️ Преимущества SQLite в Python

Если вам нужно хранить данные в локальной базе данных, то SQLite может быть лучшим выбором для вас.
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2