Специальная, подарочная акция получения доступа к Django4!
Как, я, начал код писать в Python? Смотрите, если уперлись и ничего не получается.
11. (Python) Магический метод __getitem__ практическое применение. Офигенно полезный.
> # -*- coding: utf-8 -*- """ Задача есть дом, нам нужно получить доступ к каждой квартире и поменять данные. список - поместить много квартир словарь - ключ и значение [{номер квартиры(int): собственник(str)},{},] __getitem__ получение я получаю квартиру {} - dict с полученным значением работаю изменяю данные. """ '\nЗадача есть дом, \nнам нужно получить доступ к каждой квартире и поменять данные.\n' import copy class Building(): """ Args: room - [{key:"value"}, {key:"value"},.....] """ # задаёт начальные параметры def __init__(self, room): self.room = room # создадим переменную и присвоим путстой список, # в качестdе значения args room = [] def __getitem__(self, index): """ Пропишем для себя метод __getitem__ , цель которого извлекать объект """ print("Вывод __getitem__ ") copy_obj = copy.copy(self) copy_obj.room = copy_obj.room[index] return copy_obj copy_obj = Building([{1: "Васечкин"}]) # пробуем извлечь, проверяем работу __getitem__ print(copy_obj[0].room) Вывод __getitem__ {1: 'Васечкин'} # добавим словарь в наш список copy_obj.room.append({"2":"Гаечкина"}) # выаодим наш словарь print(copy_obj.room) [{1: 'Васечкин'}, {'2': 'Гаечкина'}, {'2': 'Гаечкина'}] # извлечём элемент 2 - {'2': 'Гаечкина'} print(copy_obj[2].room) Вывод __getitem__ {'2': 'Гаечкина'} # создаим переменную с действием извлечение 2-го элемента room_dict_output = copy_obj[2].room Вывод __getitem__ # выведим результат print(room_dict_output) {'2': 'Гаечкина'} # присваиваем новое значение словарю room_dict_update = room_dict_output['2'] =("Болтикова") # выаодим наш словарь print(copy_obj.room) [{1: 'Васечкин'}, {'2': 'Гаечкина'}, {'2': 'Болтикова'}] room_dict_output['3'] = room_dict_output.pop('2') print(copy_obj.room) [{1: 'Васечкин'}, {'2': 'Гаечкина'}, {'3': 'Болтикова'}] room_dict_output[3] = room_dict_output.pop('3') print(copy_obj.room) [{1: 'Васечкин'}, {'2': 'Гаечкина'}, {3: 'Болтикова'}]
Вcе записи подраздела.
Сейчас вы проходите урок: 11. (Python) Магический метод __getitem__ практическое применение. Офигенно полезный.
<< Назад | Далее >>
Все уроки с тегом: __getitem__