파이썬 질문

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
파이썬 질문

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()을 추가했습니다.

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

회원로그인

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