파이썬 질문

파이썬 질문

QA

파이썬 질문

본문

밑에 있는 사진처럼 코드를 나오게 하고 싶어서 이렇게 코드를 짜봤는데 실행을 하면 계속 오류가 뜹니다. 뭐가 잘못된건지 알려주실 수 있으실까요

class Person:

    def __init__(self, name, mobile=None, email=None):

        self.__name = name

        self.__mobile = mobile

        self.__email = email

 

    def __str__(self):

        p = "< Name: " + str(self.__name) + " >\n"

        if self.__mobile != None:

            p += "mobile phone: " + str(self.__mobile) + "\n"

        if self.__email != None:

            p += "email address: " + str(self.__email) + "\n"

        return p

 

    #접근자

    def getName(self):

        return self.__name

    def getMobile(self):

        return self.__mobile

    def getEmail(self):

        return self.__email

   

    #설정자

    def setName(self, n):

        self.__name = n

    def setMobile(self, m):

        self.__mobile = m

    def setEmail(self, e):

        self.__email = e

 

class Phonebook:

    def __init__(self):

        self.__contacts = dict()

 

    def __str__(self):

        p = ''

        for who in sorted(self.__contacts):

            p += str(self.__contacts[who]) + "\n"

        return p

 

    def add(self, name, mobile=None, email=None):

        who = Person(name, mobile, email)

        self.__contacts[name] = who

 

def main7():

    print("no.7\n")

    obj = Phonebook()

    obj.add("Kim", mobile="*** 개인정보보호를 위한 휴대폰번호 노출방지 ***", email="*** 개인정보보호를 위한 이메일주소 노출방지 ***")

    obj.add("lee", mobile="*** 개인정보보호를 위한 휴대폰번호 노출방지 ***", email="*** 개인정보보호를 위한 이메일주소 노출방지 ***")

    obj.add("park", mobile="*** 개인정보보호를 위한 휴대폰번호 노출방지 ***", email="*** 개인정보보호를 위한 이메일주소 노출방지 ***")

    print(obj)

3718297797_1667548823.0007.png

이 질문에 댓글 쓰기 :

답변 1

올려주신코드를 실행해보면

 


no.7
< Name: Kim >
mobile phone: *** 개인정보보호를 위한 대폰번호 노출방지 ***
email address: *** 개인정보보호를 한 이메일주소 노출방지 ***
< Name: lee >
mobile phone: *** 개인정보보호를 위한 대폰번호 노출방지 ***
email address: *** 개인정보보호를 한 이메일주소 노출방지 ***
< Name: park >
mobile phone: *** 개인정보보호를 위한 대폰번호 노출방지 ***
email address: *** 개인정보보호를 한 이메일주소 노출방지 ***

 

와 같은 결과가 나옵니다.

 

아.. 맨아래에

 

main7()을 추가했습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 209
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT