파이썬 인스턴스 질문입니다.
class Student:
def __init__(self, name, korean, math, english, science):
self.name = name
self.korean = korean
self.math = math
self.english = english
self.science = science
def get_sum(self):
return self.korean + self.math +\
self.english + self.science
def get_average(self):
return self.get_sum() / 4
def to_string(self):
return "{}\t{}\t{}".format(\
self.name,\
self.get_sum(),\
self.get_average())
# 학생 리스트를 선언함
students = [
Student("윤인성", 87, 98, 88, 95),
Student("연하진", 92, 98, 96, 98),
Student("구지연", 76, 96, 94, 90),
Student("나선주", 98, 92, 96, 92),
Student("윤아린", 95, 98, 98, 98),
Student("윤명월", 64, 88, 92, 92)
]
print("이름", "총점", "평균", sep="\t")
for student in students:
print(student.to_string())
위 코드의 마지막 for문 변수인 student 변수는 students 리스트 안에 있는 클래스를 받아서 쓰는 변수로 보이는데
그럼 student 변수가 Student 클래스의 인스턴스 변수가 된 거라고 보면 될까요?
개발자가_되어보자 님 563
2021년 1월 28일 4:34 오후
students 에는 이미 Student 객체가 6개 들어있구요. for문에서는 불러서 쓰고 있네요.
-
박응용님,
2021년 1월 28일 5:55 오후
추천
,
대댓글
@박응용님 네 그러니까 students 리스트에 있는 클래스들을 꺼내서 쓰고 있는데 클래스들을 꺼내 쓰는 게 student 변수입니다.
그럼 student 변수는 Student 클래스의 인스턴스 변수인지를 질문드리는 것 입니다.
인스턴스 변수가 맞나요?
-
개발자가_되어보자님,
M 2021년 1월 28일 10:33 오후
추천
,
대댓글
@개발자가_되어보자님 students 리스트에 있는 것은 클래스가 아니라 Student 클래스로 만들어진 객체입니다. 그리고 for문에서 student 변수는 students 리스트의 요소들이 한개씩 대입되는 매개변수이구요.
-
박응용님,
2021년 1월 28일 11:18 오후
추천
,
대댓글
@박응용님 그렇군요 답변주셔서 감사합니다!
-
개발자가_되어보자님,
2021년 1월 29일 1:09 오전
추천
,
대댓글