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

3762

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…

  10 sự thật thú vị về ngôn ngữ lập trình Python
  11 tip học Python dành cho các “newbie”

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

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

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

Có thể bạn quan tâm:

Xem thêm các việc làm Developer hấp dẫn tại TopDev