Lớp Python có thuộc tính

Khi tạo một class trong Python, bạn sẽ thường tạo các thuộc tính có thể được chia sẻ trên mọi đối tượng của một lớp hoặc các thuộc tính sẽ là duy nhất cho từng đối tượng của lớp

Trong bài viết này, chúng ta sẽ thấy sự khác biệt giữa thuộc tính lớp và thuộc tính thể hiện trong Python với các ví dụ

Trước khi làm điều đó, hãy xem cách tạo một lớp trong Python

Cách tạo một lớp trong Python

Để tạo một lớp trong Python, chúng tôi sử dụng từ khóa class theo sau là tên của lớp. Đây là một ví dụ

class Student:
    name = "Jane"
    course = "JavaScript"

Trong đoạn mã trên, chúng tôi đã tạo một lớp có tên là Student với thuộc tính namecourse. Bây giờ hãy tạo các đối tượng mới từ lớp này

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane

Chúng ta đã tạo một đối tượng mới có tên là

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
0 từ lớp Student

Khi chúng tôi in

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
2, chúng tôi đã in "Jane" lên bảng điều khiển. Nhớ lại rằng giá trị của Jane đã được lưu trữ trong một biến trong lớp ban đầu được tạo

Các biến namecourse này thực sự là các thuộc tính của lớp. Chúng ta sẽ xem thêm các ví dụ trong phần tiếp theo để giúp bạn hiểu rõ hơn

Thuộc tính lớp và trường hợp trong Python

Để đưa ra một định nghĩa cơ bản cho cả hai thuật ngữ, các thuộc tính của lớp là các biến lớp được kế thừa bởi mọi đối tượng của một lớp. Giá trị của các thuộc tính lớp vẫn giữ nguyên cho mọi đối tượng mới

Giống như bạn sẽ thấy trong các ví dụ trong phần này, các thuộc tính lớp được định nghĩa bên ngoài hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5

Mặt khác, các thuộc tính thể hiện, được định nghĩa trong hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5, là các biến lớp cho phép chúng ta xác định các giá trị khác nhau cho từng đối tượng của một lớp

Đây là một ví dụ

class Student:
    school = "freeCodeCamp.org"
    
    def __init__(self, name, course):
        self.name = name
        self.course = course
    
Student1 = Student("Jane", "JavaScript")
Student2 = Student("John", "Python")

print(Student1.name) # Jane
print(Student2.name) # John

Trong đoạn mã trên, chúng ta đã tạo một biến trong lớp Student có tên là

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
8

Chúng tôi đã tạo thêm hai biến nhưng trong hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5 – namecourse – mà chúng tôi đã khởi tạo bằng cách sử dụng tham số
class Student:
    school = "freeCodeCamp.org"
    
    def __init__(self, name, course):
        self.name = name
        self.course = course
    
Student1 = Student("Jane", "JavaScript")
Student2 = Student("John", "Python")

print(Student1.name) # Jane
print(Student2.name) # John
2

Tham số đầu tiên trong hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5 dùng để khởi tạo các tham số khác khi tạo biến trong hàm. Bạn có thể gọi nó là gì tùy thích – theo quy ước,
class Student:
    school = "freeCodeCamp.org"
    
    def __init__(self, name, course):
        self.name = name
        self.course = course
    
Student1 = Student("Jane", "JavaScript")
Student2 = Student("John", "Python")

print(Student1.name) # Jane
print(Student2.name) # John
2 chủ yếu được sử dụng

Biến

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
8 đóng vai trò là thuộc tính lớp trong khi namecourse là thuộc tính thể hiện. Hãy chia nhỏ ví dụ trên để giải thích các thuộc tính của cá thể

Student1 = Student("Jane", "JavaScript")
Student2 = Student("John", "Python")

print(Student1.name) # Jane
print(Student2.name) # John

Chúng tôi đã tạo hai đối tượng từ lớp Student

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
0 và
Student1 = Student("Jane", "JavaScript")
Student2 = Student("John", "Python")

print(Student1.name) # Jane
print(Student2.name) # John
0. Mỗi đối tượng này mặc định sẽ có tất cả các biến được tạo trong lớp. Nhưng mỗi đối tượng có thể có biến namecourse của riêng mình vì chúng được tạo trong hàm
class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5

Bây giờ, hãy in biến

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
8 cho mỗi đối tượng và xem điều gì sẽ xảy ra

print(Student1.school) # freeCodeCamp.org
print(Student2.school) # freeCodeCamp.org

Cả hai đều cho chúng ta cùng một giá trị vì biến

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
8 là một thuộc tính của lớp

Phần kết luận

Trong bài viết này, chúng ta đã thấy cách tạo một lớp trong Python và sự khác biệt giữa các thuộc tính lớp và thể hiện

Tóm lại, các thuộc tính lớp vẫn giữ nguyên cho mọi đối tượng và được định nghĩa bên ngoài hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5. Các thuộc tính sơ thẩm có phần động vì chúng có thể có các giá trị khác nhau trong mỗi đối tượng

Các thuộc tính của trường hợp được xác định trong hàm

class Student:
    name = "Jane"
    course = "JavaScript"
    
Student1 = Student()

print(Student1.name)
# Jane
5

Mã hóa vui vẻ

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO


Lớp Python có thuộc tính
Ihechikara Vincent Abba

Tiểu sử của tác giả này có thể được tìm thấy trong các bài viết của ông


Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn

Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu