Trừu tượng trong oops python

Tính trừu tượng trong python được định nghĩa là ẩn việc triển khai logic khỏi máy khách và sử dụng một ứng dụng cụ thể. Và tính năng chính quan trọng nhất của Lập trình hướng đối tượng. Nó ẩn dữ liệu không liên quan được chỉ định trong dự án, giảm độ phức tạp và mang lại giá trị hiệu quả. Tính trừu tượng được tạo bằng Python bằng cách sử dụng các lớp Trừu tượng và các phương thức của chúng trong mã

cú pháp

Lớp trừu tượng Cú pháp được khai báo là

from abc import ABC
// declaration
class classname(ABC);

Phương thức trừu tượng Cú pháp được khai báo là

Bắt đầu khóa học phát triển phần mềm miễn phí của bạn

Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác

def abstractmethod name():
pass

Trừu tượng hoạt động như thế nào trong Python?

Vì vai trò chính của Trừu tượng là ẩn chức năng bên trong của mã và các tương tác được thực hiện với người dùng thông qua triển khai cơ bản. Nói cách khác, người dùng biết mình đang làm gì chứ không phải công việc được thực hiện như thế nào. Vì vậy, hãy đi sâu hơn vào chủ đề để tìm tầm quan trọng của nó

Trong Python, Trừu tượng hoạt động bằng cách kết hợp các lớp và phương thức trừu tượng

lớp trừu tượng. Một lớp được chỉ định trong mã có các phương thức trừu tượng được đặt tên là Lớp trừu tượng

phương pháp trừu tượng. Ở đây, nó không có bất kỳ triển khai nào. Tất cả các triển khai được thực hiện bên trong các lớp con

Python sử dụng biến tự định nghĩa trong định nghĩa phương thức và khởi tạo biến. Trong python, một phương thức lớp cung cấp thông tin về lớp. Để xác định một phương thức tức thì, phương thức này nên khai báo self như một tham số

Trong Kịch bản trong thế giới thực, hãy để chúng tôi lấy một ví dụ, trong khi chúng tôi mua sắm trên Amazon hoặc mua sắm trực tuyến khác, chúng tôi mua sản phẩm/thêm vào giỏ hàng và thanh toán cho chúng, Nhưng khi chúng tôi nhấp vào các tùy chọn có sẵn thực hiện nhiều chức năng phía sau . Chỉ chế độ xem cần thiết được cung cấp cho người dùng. Đây chính xác là nơi mà một sự trừu tượng hoạt động thông qua lợi ích của phân loại theo Thứ bậc (Một Mô-đun phức hợp được chia thành các phần có thể quản lý được)

Vài điều cần lưu ý trong Python

  1. Trong python, một lớp trừu tượng có thể chứa cả phương thức trừu tượng và phương thức bình thường
  2. Điểm thứ hai là một lớp trừu tượng không được bắt đầu (không có đối tượng nào được tạo)
  3. Vì python không định nghĩa giao diện, thay vào đó, chúng ta có thể sử dụng chính lớp trừu tượng Keyword
  4. Các phương thức triển khai của lớp dẫn xuất được định nghĩa trong các lớp cơ sở trừu tượng

Tiếp theo, chúng ta sẽ xem cách khai báo một Lớp trừu tượng với mô-đun. Để làm như vậy, chúng ta bắt đầu

from abc import ABC    // here abc and ABC are case-sensitive. When we swap it creates
Syntax errors.

Python có cái hay là sở hữu Module làm cơ sở của Lớp trừu tượng tên là ABC – Abstract BaseClass. bây giờ chúng ta hãy tạo một đối tượng của lớp trừu tượng

class product(ABC):                    // Abstract Class
// Normal Method
def item_list(self, rate):
// Method Definition
print("amount submitted : ",rate)
@abstractmethod
def product(self,rate):                       // Abstract Method
// Method Definition
Pass

Ở đây chúng tôi đã tạo một sản phẩm lớp có hai chức năng. phương pháp bình thường và trừu tượng. Đối với phương thức trừu tượng, các lớp con của sản phẩm sẽ có các chức năng của chúng. Nó xử lý mã bằng cách chia chúng thành các đơn vị nhỏ hơn

Ví dụ về Trừu tượng trong Python

Bây giờ chúng ta sẽ xem một ví dụ thể hiện Trừu tượng trong Python

Ví dụ 1

Mã số

from abc import ABC
class geometric(ABC):
    def volume(self):
#abstract method
    pass
class Rect(geometric):
	length = 4
	width = 6
	height= 6
	def volume(self):
    	return self.length * self.width *self.height
class Sphere(geometric):
	radius = 8
	def volume(self):
    	return 1.3 * 3.14 * self.radius * self.radius *self.radius
class Cube(geometric):
	Edge = 5
	def volume(self):
    	return self.Edge * self.Edge *self.Edge
class triangle_3D:
	length = 5
	width = 4
	def volume(self):
    	return 0.5 * self.length * self.width
rr = Rect()
ss = Sphere()
cc = Cube()
tt = triangle_3D()
print("Volume of a rectangle:", rr.volume())
print("Volume of a circle:", ss.volume())
print("Volume of a square:", cc.volume())
print("Volume of a triangle:", tt.volume())

Giải trình

Để minh họa việc sử dụng lớp trừu tượng, chúng ta phải tạo một Đối tượng cho mọi phương thức ở đây

đầu ra

Trừu tượng trong oops python

Ví dụ #2

Mã số

from abc import ABC, abstractmethod
class Invoice(ABC):
	def final_bill(self, pay):
	    print('Purchase of the product- ', pay)
	    @abstractmethod
	    def Invoice(self, pay):
	    pass
class paycheque(Invoice):
	def Invoice(self, pay):
    	print('paycheque of- ', pay)
class CardPayment(Invoice):
	def Invoice(self, pay):
    	print('pay through card of- ', pay)
aa = paycheque()
aa.Invoice(6500)
aa.final_bill(6500)
print(isinstance(aa,Invoice))
aa = CardPayment()
aa.Invoice(2600)
aa.final_bill(2600)
print(isinstance(aa,Invoice))

Giải trình

Vì vậy, trong đoạn mã trên, có một lớp trừu tượng Invoice và phương thức trừu tượng hóa đơn () bên dưới câu lệnh def cũng có hai lớp con dẫn xuất từ ​​Hóa đơn và thực hiện các chức năng. Sau đó, sử dụng một Đối tượng 'aa', các phương thức được gọi

đầu ra

Trừu tượng trong oops python

Ví dụ #3

Mã số

from abc import ABC, abstractmethod
class Bank(ABC):
    def branch(self, RD):
        print("Fees submitted : ",RD)
        @staticmethod
        @abstractmethod
        def Bank(RD):
        pass
class private(Bank):
    @staticmethod
    def Bank(RD):
        print("Total RD Value here: ",RD)
class XXX(Bank):
    @staticmethod
    def Bank(RD):
        print("Total RD Value here:",RD)
private.Bank(500)
XXX.Bank(200)

Giải trình

Đoạn mã trên giải thích cách kết hợp các phương thức trừu tượng và tĩnh. Vì vậy, ở đây, lớp private và XXX có một phương thức tĩnh Bank bên trong chúng. Và đầu ra được hiển thị dưới đây như

đầu ra

Trừu tượng trong oops python

Ví dụ #4

Mã số

from abc import ABC, abstractmethod
class educlass(ABC):
    def print(self,a):
        print("The value is: ", a)
        @abstractmethod
        def course(self):
            print("This is educlass")
class learn(educlass):
	def course(self):
	    print("This is test class")
class demo_class(educlass):
	def course(self):
	    print("This is demo class")
t1 = learn()
t1.course()
t1.print(500)
ex = demo_class()
ex.course()
ex.print(850)
print("t1 is instance of educlass? ", isinstance(t1, educlass))
print("ex is instance of educlass? ", isinstance(ex, educlass))

Giải trình

Ở đây mã có một phương thức trừu tượng khóa học () và một phương thức in () hiển thị cho người dùng. Lớp kế thừa ở đây là lớp demo và học và có phương thức khóa học() của họ. Các đối tượng được tạo cho lớp tương ứng và gọi phương thức course() cho cả hai lớp. Những mẩu thông tin ẩn bên trong chúng đang hoạt động. isinstance trả về giá trị true hoặc false trong python

đầu ra

Trừu tượng trong oops python

Phần kết luận

Do đó, trong bài viết này, chúng ta đã thảo luận chi tiết về việc sử dụng tính trừu tượng, một khái niệm OOPS và được áp dụng trong các ứng dụng trong thế giới thực. Các lớp trừu tượng đặc biệt có lợi khi làm việc trên các dự án với các nhà phát triển khác nơi các mô-đun được thực hiện song song. tôi hi vọng. Các bạn đã hiểu lớp trừu tượng trong Python với cách triển khai của chúng

Bài viết được đề xuất

Đây là hướng dẫn về Trừu tượng trong Python. Ở đây chúng tôi thảo luận về việc sử dụng trừu tượng; . Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Việc sử dụng tính trừu tượng trong Python là gì?

Trừu tượng hóa dữ liệu trong Python có thể đạt được thông qua việc tạo các lớp trừu tượng và kế thừa chúng sau này. Trước khi thảo luận về các lớp trừu tượng là gì, chúng ta hãy giới thiệu ngắn gọn về thừa kế. Kế thừa trong OOP là cách mà một lớp kế thừa các thuộc tính và phương thức của lớp khác

Tính trừu tượng trong OOP là gì?

Trong lập trình hướng đối tượng, tính trừu tượng là một trong ba nguyên tắc trung tâm (cùng với đóng gói và kế thừa). Thông qua quá trình trừu tượng hóa, một lập trình viên ẩn tất cả trừ dữ liệu liên quan về một đối tượng để giảm độ phức tạp và tăng hiệu quả.

Có sự trừu tượng trong Python không?

Python không cung cấp các lớp trừu tượng theo mặc định. Để tạo các lớp trừu tượng và thực hiện trừu tượng hóa, trước tiên chúng ta cần nhập mô-đun Python abc. Mô-đun abc này cung cấp cơ sở hạ tầng để xác định lớp cơ sở trừu tượng trong Python

Tính trừu tượng và đóng gói trong Python là gì?

Định nghĩa. Trừu tượng hóa đang ẩn các chi tiết và triển khai mã. Đóng gói đang ẩn dữ liệu và kiểm soát khả năng hiển thị của mã .