Sự khác nhau giữa Method và Function trong Python

Bài viết được sự cho phép của tác giả Trần Hữu Cương

Sự khác nhau giữa Method và Function trong Python.

(Xem lại: Function trong Python là gì?)

Khái niệm method thường dùng trong lập trình hướng đối tượng như java, c#… Còn khái function thường dùng trong lập trình hàm như javascript, c…

Method trong Python

  • Method là một phần của Object (method chính là hành động của object). Hay nói cách khác, method nằm bên trong class.
  • Method có thể trả về hoặc không trả về dữ liệu
  • Method có thể xử lý dữ liệu được chứa bên trong class.

Cấu trúc method trong Python:

class class_name 
def method_name () : 
 ...... 
# method body 
 ...... 

Ví dụ:

class Person:
def __init__(self, name):
 self.name = name

def show_name(self):
print("My name is " + self.name)

def say_hello(self):
print("hello")

person = Person("kai")
person.show_name()
person.say_hello()

Kết quả:

My name is kai
hello
  Top 10 thư viện Python tốt nhất cho Data Scientist nửa đầu năm 2024

Function trong python

  • Function là một khối code gồm nhiều câu lệnh liên quan cùng thực hiện một công việc gì đó.
  • Function có thể trả về hoặc không trả về giá trị
  • Function không liên quan tới Class (Không nằm trong class, không truy cập dữ liệu trực tiếp của class)

Cấu trúc function:

def function_name ( arg1, arg2, ...) : 
 ...... 
# function body 
 ...... 

Ví dụ:

def subtract(a, b):
return (a-b)

def say_hello():
print("Hello World")

say_hello()
print("10 - 5 = %d" % subtract(10, 5)) # prints -2

Kết quả:

Hello World
10 - 5 = 5
  Tạo kho lưu cho các gói thư viện Python

Sự khác nhau giữa Method và Function trong Python

  • Cả Method và Function đều khá giống nhau trong cách hoạt động.
  • Điểm khác nhau chính giữa Method và Function chính là khái niệm Class và Object.
  • Function có thể được bởi tên trong khi method phải gọi thông qua class hoặc đối tượng.
  • Method được định nghĩa bên trong một class và phụ thuộc vào class đó.

Okay, Done!

References: https://docs.python.org/2.0/ref/function.html

Bài viết gốc được đăng tải tại codecute.com

Xem thêm các việc làm python lương cao hấp dẫn tại TopDev