본문 바로가기
개념/혼자 공부하는 파이썬

python) class parameter

by kiseno 2024. 10. 26.
728x90
반응형
SMALL
class student:
    count = 0

    def __init__(self, name, korean, english, math, science):
        self.name = name
        self.korean = korean
        self.math = math
        self.english = english
        self.science = science

        student.count += 1
        print("{}번째 학생이 생성됨".format(student.count))

students = [
    student("윤인성", 87,98,88,95),
    student("연하진",92,98,96,98),
    student("구지연",98,96,90,89),
    student("나선주",88,86,64,87),
    student("윤아린",98,99,78,80),
]

print()
print("총 학생 수 : {}".format(student.count))

This code snippet demonstrates a basic application of class-level attributes and instance creation in Python, focusing on a `student` class that tracks the number of instances created and prints a message each time a new instance (student) is created. Here's a breakdown of its functionality:

### Class Definition: `student`

- **Class Attribute `count`**: Initialized to 0, this attribute is shared across all instances of the `student` class. It's used to count the total number of student instances created.

- **`__init__` Method**: This is the initializer method for the `student` class, which sets up each instance with the provided name, scores in Korean, English, Math, and Science, and increments the `count` class attribute by 1. The message printed within this method indicates the creation order of each student instance.

### Instance Creation

The code creates instances of the `student` class for five students, each with their name and scores in various subjects. During each instance creation, the `__init__` method is called, which increments the `count` and prints a message indicating which number student has been created.

### Output

- As each `student` instance is created, a message is printed to the console indicating the order of creation (e.g., "1번째 학생이 생성됨").
- After all instances are created, the total number of student instances is printed by accessing the class attribute `student.count`.

### Example Output

Assuming the class and instances are defined as shown, the output would be something like:

```
1번째 학생이 생성됨
2번째 학생이 생성됨
3번째 학생이 생성됨
4번째 학생이 생성됨
5번째 학생이 생성됨

총 학생 수 : 5
```

This demonstrates the class's ability to track the total number of instances created, which can be useful in various applications, such as managing collections of objects where the total count or similar metrics need to be tracked.

728x90
반응형
LIST