Listing 10 - Page 0: No Title

##############################################################################
# Python From Scratch
# Autor: Nilo Ney Coutinho Menezes
# Editora Novatec (c) 2010-2024
# Site: https://pythonfromscratch.com
#
# File: listing\chapter 10\10.1466 - No Title.py
# Description: No Title
##############################################################################

from unique_list import UniqueList
class Telephones(UniqueList):
    def __init__(self):
        super().__init__(Telephone)
class PhonebookData:
    def __init__(self, name):
        self.name = name
        self.telephones = Telephones()
    @property
    def name(self):
        return self.__name
    @name.setter
    def name(self, value):
        if not isinstance(value, Name):
            raise TypeError("name must be an instance of the Name class")
        self.__name = value
    def search_telephone(self, telephone):
        position = self.telephones.search(Telephone(telephone))
        if position == -1:
            return None
        else:
            return self.telephones[position]
Click here to download the file