Trong Python2, điều này tuyên bố
class Foo[Base1, Base2]:
1 là một lớp theo phong cách mới [trái ngược với lớp "Cổ điển"]. Trong Python3, tất cả các lớp là các lớp kiểu mới, vì vậy điều này không còn cần thiết nữa.Các lớp phong cách mới có một vài thuộc tính đặc biệt mà các lớp cổ điển thiếu.
class Classic: pass
class NewStyle[object]: pass
print[dir[Classic]]
# ['__doc__', '__module__']
print[dir[NewStyle]]
# ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__']
Ngoài ra, các thuộc tính và siêu không hoạt động với các lớp cổ điển.
Trong Python2, bạn nên tạo ra tất cả các lớp học theo kiểu mới. [Mặc dù rất nhiều lớp trong thư viện tiêu chuẩn vẫn là các lớp cổ điển, vì mục đích tương thích ngược.]
Nói chung, trong một tuyên bố như
class Foo[Base1, Base2]:
class Foo[Base1, Base2]:
2 đang được tuyên bố là một lớp kế thừa từ các lớp cơ sở class Foo[Base1, Base2]:
3 và class Foo[Base1, Base2]:
4.class Foo[Base1, Base2]:
5 là mẹ của tất cả các lớp học ở Python. Đây là một lớp theo phong cách mới, do đó, kế thừa từ class Foo[Base1, Base2]:
5 làm cho class Foo[Base1, Base2]:
1 trở thành một lớp kiểu mới. Python là một ngôn ngữ lập trình hướng đối tượng. Các lớp và đối tượng Python là các khối xây dựng cốt lõi của ngôn ngữ lập trình Python.
Lớp Python
Vào thời điểm này, tất cả các bạn nên đã tìm hiểu về các loại dữ liệu Python. Nếu bạn nhớ, các loại dữ liệu cơ bản trong Python chỉ đề cập đến một loại dữ liệu tại một thời điểm. Làm thế nào nếu bạn có thể khai báo một loại dữ liệu có chứa nhiều loại dữ liệu và có thể làm việc với chúng với sự trợ giúp của bất kỳ chức năng nào? Lớp Python cho bạn cơ hội đó. Lớp Python là bản thiết kế mà các trường hợp của lớp được tạo.
Tuyên bố lớp Python đơn giản
Ở đây, cấu trúc rất cơ bản của định nghĩa lớp Python.
class ClassName:
# list of python class variables
# python class constructor
# python class method definitions
Bây giờ, hãy để Lừa làm việc với các ví dụ thực tế.
#definition of the class starts here
class Person:
#initializing the variables
name = ""
age = 0
#defining constructor
def __init__[self, personName, personAge]:
self.name = personName
self.age = personAge
#defining class methods
def showName[self]:
print[self.name]
def showAge[self]:
print[self.age]
#end of the class definition
# Create an object of the class
person1 = Person["John", 23]
#Create another object of the same class
person2 = Person["Anne", 102]
#call member methods of the objects
person1.showAge[]
person2.showName[]
Ví dụ này là khá nhiều tự giải thích. Như chúng ta đã biết, các dòng bắt đầu bằng cách##là những bình luận của Python. Các ý kiến giải thích các bước thực thi tiếp theo. Mã này tạo ra đầu ra sau.
Định nghĩa lớp Python
class Person:
Dòng này đánh dấu sự khởi đầu của định nghĩa lớp cho lớp ‘người.
Biến lớp Python
#initializing the variables
name = ""
age = 0
Tên tên và ’tuổi là hai biến thành viên của lớp‘ người. Mỗi lần chúng tôi khai báo một đối tượng của lớp này, nó sẽ chứa hai biến này là thành viên của nó. Phần này là tùy chọn vì chúng có thể được khởi tạo bởi hàm tạo.
Trình xây dựng lớp Python
#defining constructor
def __init__[self, personName, personAge]:
self.name = personName
self.age = personAge
Trình xây dựng lớp Python là đoạn mã đầu tiên được thực thi khi bạn tạo một đối tượng mới của một lớp. Chủ yếu, hàm tạo có thể được sử dụng để đặt các giá trị trong các biến thành viên. Bạn cũng có thể in tin nhắn trong hàm tạo để được xác nhận xem đối tượng có được tạo hay không. Chúng ta sẽ học được một vai trò lớn hơn của nhà xây dựng một khi chúng ta biết về kế thừa Python. Phương pháp hàm tạo bắt đầu bằng def __init__. Sau đó, tham số đầu tiên phải là ‘bản thân, vì nó vượt qua một tham chiếu đến trường hợp của chính lớp. Bạn cũng có thể thêm các tham số bổ sung như cách nó được hiển thị trong ví dụ. ‘Nhân vật, và‘ Personage, là hai tham số được gửi khi một đối tượng mới được tạo.
Phương pháp lớp Python
#defining python class methods
def showName[self]:
print[self.name]
Các phương thức được khai báo theo cách sau:
def method_name[self, parameter 1, parameter 2, …….]
statements……..
return value [if required]
Trong ví dụ được nêu trước, chúng tôi đã thấy rằng phương thức
class Foo[Base1, Base2]:
8 in giá trị của ‘tên của đối tượng đó. Chúng ta sẽ thảo luận nhiều hơn về các phương pháp Python vào một ngày khác.Đối tượng lớp Python
# Create an object of the class
person1 = Person["Richard", 23]
#Create another object of the same class
person2 = Person["Anne", 30]
#call member methods of the objects
person1.showAge[]
person2.showName[]
Cách các đối tượng được tạo ra trong Python khá đơn giản. Lúc đầu, bạn đặt tên của đối tượng mới được theo sau bởi toán tử gán và tên của lớp với các tham số [như được định nghĩa trong hàm tạo]. Hãy nhớ rằng, số và loại tham số phải tương thích với các tham số nhận được trong hàm hàm tạo. Khi đối tượng đã được tạo, các phương thức thành viên có thể được gọi và các thuộc tính thành viên có thể được truy cập [miễn là chúng có thể truy cập được].
class Foo[Base1, Base2]:
0Đó là tất cả cho những điều cơ bản của lớp Python. Khi chúng ta sẽ tìm hiểu về các tính năng hướng đối tượng Python như kế thừa, đa hình trong các hướng dẫn tiếp theo, chúng ta sẽ tìm hiểu thêm về lớp Python và các tính năng của nó. Cho đến lúc đó, mã hóa hạnh phúc và tạm biệt! Hãy bình luận nếu bạn có bất kỳ truy vấn nào. Tài liệu tham khảo: Tài liệu Python.org