#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http

제목step16 질문있습니다.2020-05-21 15:23
작성자

실습파일을 공부하던 중 궁금한 점이 생겨 질문드립니다.

​ 

1.

 

class Student:

        def __init__(self, givenID, givenName):

               self.id = givenID       

        self.name = givenName

        def setId(self, givenID):

        self.id = givenID

        def getId(self):

        return self.id

        def setName(self, givenName):

        self.name = givenName

       def getName(self):

        return self.name 

이 내용에서

 

def setId(self, givenID): 

        self.id = givenID

def setName(self, givenName):

        self.name = givenName 

이 부분이​ 없어도 되는 부분이라고 생각이 됩니다.

 

 

2.

 

def __str__(self):

        msg = "id:{}, name:{}".format(self.id, self.name)        

        return msg

그러면 호출을 해볼까요?

위의 __str__() 멤버 methods를 만들었기에, 앞서의 경우보다 멤버 attribute의 출력 구문이 단촐해 집니다.

 

student1 = Student(20190001, "Harry Potter")

student2 = Student(20190002, "Hermione Granger")

print(student1.getId())

print(student1.getName())

print(student2.getId())

print(student2.getName())

 

이 부분도 위를 따라하는것이 아닌 __str__를 만들었으니 활용해서 고쳐야하는 것이 맞나요??

 

조교님, 교수님께서 답변해주신다면 감사하겠습니다.

댓글