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

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

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

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

Tags: