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

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

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

https://t.me/pythonhub_chat - чат
Download Telegram
Что выдаст код выше?
Anonymous Quiz
11%
7
36%
9
19%
8
28%
Error
6%
Не знаю
👍2❤‍🔥1
Python Hub - сборище Питонистов
Photo
Разбор👨‍💻

У нас есть словарь.
Командой del мы удаляем элемент словаря (пару) по ключу —> Петров Петр идет за борт.

Далее, мы пытаемся удалить и вернуть в переменную b методом .pop из словаря некого Сидора. Так как его нет, должна была вернуться ошибка, но, в таком случае, вернется имя Федор.

Ну а далее математика. Сначала умножение. Длина словаря множить на 2 плюс длина "Федор" —> 2*2 + 5 = 9.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
Способы удаления элементов из словаря Python


👩‍💻 Использование метода del

Метод del может использоваться для удаления элемента из словаря по ключу. Например, если мы хотим удалить элемент с ключом "apple" из следующего словаря:

fruits = {"apple": 2, "banana": 3, "orange": 4}


Мы можем использовать следующий код:

del fruits["apple"]


Теперь словарь будет выглядеть следующим образом:

{"banana": 3, "orange": 4}


👩‍💻 Использование метода pop

Метод pop также может использоваться для удаления элемента из словаря по ключу. Однако, в отличие от метода del, pop также возвращает значение элемента, которое мы удалили. Например, если мы хотим удалить элемент с ключом "apple" из следующего словаря:

fruits = {"apple": 2, "banana": 3, "orange": 4}


Мы можем использовать следующий код:

apple_count = fruits.pop("apple")


Теперь словарь будет выглядеть следующим образом:

{"banana": 3, "orange": 4}


Значение "apple" будет сохранено в переменной apple_count.

👩‍💻 Использование метода clear

Метод clear может использоваться для удаления всех элементов из словаря. Например, если мы хотим очистить следующий словарь:

fruits = {"apple": 2, "banana": 3, "orange": 4}


Мы можем использовать следующий код:

fruits.clear()


Теперь словарь будет выглядеть следующим образом:

{}

#python #словарь #dict
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Кто там просил задачи на ООП?
👍4
Что выдаст код выше?
Anonymous Quiz
24%
1
21%
1 2 3
10%
1 2
24%
1 3
14%
Error
7%
Не знаю
❤‍🔥2👍1
Что такое модели в Django?


Модель в Django - это специальный класс Python, который определяет структуру таблицы в базе данных. Каждый атрибут класса соответствует столбцу в таблице, а тип атрибута определяет тип данных, хранимых в столбце. Django предоставляет множество типов полей, таких как CharField, IntegerField, BooleanField и *другие, которые можно использовать для определения различных типов данных.

👩‍💻 Создание модели

Чтобы создать модель в Django, нужно создать новый класс Python в файле models.py вашего приложения. Например, если вы создаете блог, вы можете создать модель для статей следующим образом:

from django.db import models

class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
pub_date = models.DateTimeField(auto_now_add=True)


В этом примере мы создали модель Article с тремя полями: title, content и pub_date. Поле title определено как CharField с максимальной длиной 100 символов. Поле content определено как TextField, который может хранить длинные тексты. Поле pub_date определено как DateTimeField, который автоматически заполняется текущей датой и временем при создании новой записи.

* - https://docs.djangoproject.com/en/4.2/ref/models/fields/ ( все поля для моделей и их описание )

#django #models
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Python Hub - сборище Питонистов
Кто там просил задачи на ООП?
Разбор👨‍💻

Чуть не забыл про разбор.

У нас есть класс, в котором мы переопределили 2 метода. Конструктор - init и деструктор - del.
Конструктор вызывается при вызове класса/создании объекта.
Деструктор, при удалении объекта.

Так как у нас есть вызов класса - вызвался конструктор. На экране сработал вывод 1, но далее следует return, который останавливает работу функции (конструктора).

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

Поэтому деструктор срабатывает автоматически для всех объектов программы, когда она завершает свою работу.
Видим вывод 3.

Ответ: 1 3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Что выдаст код выше?
Anonymous Quiz
35%
a c
33%
a b c
13%
a b
9%
a
4%
a c b
7%
Не знаю
👍4
Python Hub - сборище Питонистов
Photo
Разбор👨‍💻

У нас уже была как-то задача, где есть 2 функции, которые одинаково названы и есть вызов.

Сначала отработает самая последняя строка - она вызовет самую наружную функцию, в ней принтанется буква 'a'.

Далее у нас идет объявление двух функций подряд, а только потом вызов —> вызываться будет последняя объявленная функция, в которой написан вывод в принте 'c'.

Больше никаких вызовов/циклов и тд нет, значит функции будут завершать работу, и мы вернемся в место первого вызова, после чего код завершиться.

Итог: а с
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Что такое конструктор __init__ в Python?

Конструктор init - это специальный метод в Python, который автоматически вызывается при создании объекта класса. Он используется для инициализации переменных экземпляра класса. Метод конструктора определяется с префиксом и суффиксом двойного подчеркивания (init). Он принимает параметр self в качестве первого аргумента и может получать другие дополнительные параметры, которые могут быть использованы для инициализации переменных экземпляра.

Вот простой пример класса с конструктором:

class Car:
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year


В приведенном выше коде мы определили класс Car с тремя переменными экземпляра - make, model и year. Метод init принимает три параметра - make, model и year. Когда создается объект класса Car, метод init инициализирует переменные экземпляра соответствующими переданными аргументами.

👩‍💻 Как использовать конструктор init в Python?

Для использования метода конструктора init необходимо создать объект класса. Вот пример того, как создать объект класса Car и инициализировать его переменные экземпляра:

my_car = Car("Toyota", "Camry", 2021)


В приведенном выше коде мы создали объект класса Car с именем my_car и передали три аргумента, чтобы инициализировать его переменные экземпляра.

👩‍💻 Преимущества конструктора init в Python

Метод конструктора init в Python имеет несколько преимуществ. Во-первых, он позволяет нам автоматически инициализировать переменные экземпляра класса при создании объекта. Во-вторых, он гарантирует, что переменные экземпляра инициализируются последовательно и уменьшает риск ошибок, вызванных неинициализированными переменными. В-третьих, он обеспечивает стандартный способ определения и инициализации переменных экземпляра в классе и делает код более читаемым и удобным для сопровождения.

#class #init #конструктор
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Что выдаст код выше?
Anonymous Quiz
16%
Error
59%
8
11%
7
8%
4
3%
5
3%
Не знаю
2👍1
Python Hub - сборище Питонистов
Photo
Разбор👨‍💻

У наст есть класс A, в котором реализован конструктор - функция __init__.

При создании объекта мы передаем в переменную a двойку, а переменная b автоматически принимает значение 5.

Далее при помощи строк:
self.a = a
self.b = b
Мы прикрепляем значения 2 и 5 для нашего объекта.

После, в строке:
a.a = 3
Мы меняем свойство a с 2ух на 3.

В результат выводим сумму значений объекта из атрибутов а и b, 3 и 5 —> 8
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Что выдаст код выше?
Anonymous Quiz
7%
5
5%
8
12%
7
55%
[6, 7]
12%
Error
10%
Не знаю
👍3❤‍🔥1🏆1
Python Hub - сборище Питонистов
Что выдаст код выше?
Разбор👨‍💻

Сначала мы найдем элемент в списке по индексу [-3].

Начинаем считать с конца. (отсчет ведем не с -0, а с -1) —> получаем элемент [5, [6, 7]]

Ну а далее мы у этого элемента берем элемент по индексу [-1] —> получаем [6, 7]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3