Hướng dẫn định nghĩa và sử dụng Function trong Python

Ngày đăng: 09/04/2019   -    Cập nhật: 22/10/2020


Function (hay còn gọi là Hàm): Là một khối lệnh được đóng gói lại thành một đơn vị độc lập, dùng để thực hiện một tác vụ trong chương trình.


Hàm giúp phân chia chương trình tốt hơn, và cho phép tái sử dụng lại mã nguồn.


Python cung cấp nhiều các hàm dựng sẵn (built-in-function), ngoài ra ta có thể tự định nghĩa các hàm của riêng mình. Những hàm này còn được gọi là user-defined function.



  • Hàm sau khi được định nghĩa sẽ không tự thực thi.
  • Hàm chỉ thực thi khi được gọi đến.


Chú ý!

Khi định nghĩa hàm ta nên đặt tên hàm là một động từ, vì hàm thể hiện một hành động, một tác vụ của chương trình.



Một số quy tắc khi định nghĩa hàm trong Python


Trong Python, chúng ta định nghĩa hàm theo quy tắc sau:


  • Định nghĩa hàm sẽ bắt đầu với từ khóa def, sau đó là tên hàm và cặp dấu ngoặc ( )
  • Cặp dấu ( ) sẽ chứa các tham số của hàm (nếu có)
  • Câu lệnh đầu tiên của hàm có thể là một lệnh tùy chọn, để mô tả về hàm (còn gọi là docstring)
  • Thân của hàm sẽ bắt đầu với một dấu : và được thụt lề.
  • Lệnh return dùng để thoát ra khỏi hàm, và trả lại giá trị từ hàm.



Cú pháp định nghĩa hàm trong Python


Ta sử dụng Cú pháp như sau để định nghĩa hàm trong Python:


Cú pháp (Syntax) định nghĩa hàm trong Python


Cú pháp (Syntax) định nghĩa hàm trong Python

 
Ví dụ định nghĩa hàm:


Ở đây ta đã định nghĩa ra một hàm có tên là my_function().


Hàm này chỉ đơn giản in ra một chuỗi.


Sau đó ta gọi hàm vừa tạo:




def my_function():
      print("Hello from a Function")

my_function()

# Kết Quả
# Hello from a Function
 

Hướng dẫn sử dụng tham số với hàm trong Python


Hàm có thể có các tham số.


Tham số cho phép thay đổi nội dung bên trong hàm, làm cho hàm trở nên linh hoạt hơn, động hơn.


Hàm có thể trả về kết quả khác nhau dựa trên giá trị truyền vào của tham số khác nhau.



Chú ý!

Khi định nghĩa hàm, ta khai báo bao nhiêu tham số, thì khi gọi hàm, ta cần truyền bấy nhiêu giá trị vào hàm.


Ví dụ: Ở đây ta định nghĩa một hàm add() cho phép tính tổng của hai số được truyền từ bên ngoài vào hàm. Sau đó ta nhập hai số vào từ bàn phím, rồi gọi hàm vừa tạo.



# Định nghĩa Hàm add()
def add(ab):
    sum = a + b
    return sum

# Nhập 2 số vào từ bàn phím
x = int(input("Nhập số thứ nhất:"))
y = int(input("Nhập số thứ hai:"))

# Gọi hàm add() vừa được định nghĩa ở trên
tong = add(xy)

# In ra tổng vừa tính được
print("Tổng là: " + str(tong))
 


> Lưu ý: Trong python, bạn muốn nối giá trị thì phải chúng phải cùng kiểu. Vì thế chúng ta phải chuyển tong thành  str


Sau khi đã viết mã xong, ta sẽ thực thi hàm vừa tạo.


Ta sẽ thấy chương trình hiển thị kết quả đúng như mong muốn.


            
        

Cách truyền tham số có giá trị mặc định trong Python


Khi định nghĩa hàm, ta có thể gán giá trị mặc định cho tham số.


Khi gọi hàm, nếu ta không truyền giá trị cho tham số, thì tham số sẽ tự động được gán giá trị mặc định.


Nếu ta có truyền giá trị cho tham số, thì tham số sẽ chứa giá trị được truyền.


Ta truyền giá trị mặc định cho tham số sẽ có lợi, khi ta quên truyền giá trị cho tham số thì sẽ không bị lỗi.


Ví dụ dưới đây có định nghĩa một hàm, có một tham số là country, đồng thời ta truyền giá trị mặc định cho tham số vừa tạo là "Norway".




def my_function(country = "Norway"):
      print("I am from " + country)

my_function("Sweden")
my_function("India")
my_function()
my_function("Brazil")
 


Kết quả sau khi gọi hàm có truyền đối số hoặc không truyền đối số:


            
        


Để trả về một giá trị từ hàm, ta sử dụng lệnh return.


Lệnh return còn được dùng để thoát ra khỏi hàm, lúc này điều khiển của chương trình sẽ quay về nơi gọi hàm.


Trong ví dụ dưới đây, ta đã định nghĩa hàm my_function, có một tham số x. Hàm này trả về tích của 5 * x.


Sau đó ta gọi hàm vừa tạo.




def my_function(x):
      return 5 * x

print(my_function(3))
print(my_function(5))
print(my_function(9))
 

Kết quả được hiển thị như bên dưới:
            
        

Chúc mừng bạn đã biết thêm về Function trong Python


Như vậy là qua bài này bạn đã hiểu về cách tạo Function (hàm) trong Python, cách truyền tham số, gọi hàm và sử dụng tham số mặc định trong Python.


Hàm là xương sống của bất kỳ ngôn ngữ lập trình nào. Chúng ta sẽ sử dụng hàm liên tục trong quá trình HỌC PYTHON.


Hãy ghi nhớ kỹ về hàm để sử dụng trong các bài học tiếp theo.



TONY HÙNG CƯỜNG
Bình luận Facebook
Đăng ký tư vấn
Nhân viên gọi điện tư vấn miễn phí sau khi đăng ký
Được cập nhật các ưu đãi sớm nhất
Hotline: 0383180086
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Hãy đăng ký để nhận những thông tin mới nhất về học bổng mới nhất tại NIIT - ICT Hà Nội
top
Đóng lại Đăng ký học tại NIIT - ICT Hà Nội
6260+ học viên đã theo học tại NIIT - ICT Hà Nội và có việc làm tốt trong ngành lập trình. Nắm lấy cơ hội ngay hôm nay!
Chọn khóa học
  • KHÓA HỌC LẬP TRÌNH FRONT END VỚI REACT.JS
  • KHÓA HỌC LẬP TRÌNH PHP WEB
  • Khóa học PHP Full stack [2023] cho người mới bắt đầu
  • Khóa học BIG DATA với Hadoop và Spark
  • Khóa học Lập trình Android tại Hà Nội
  • [Tuyển sinh 2023] Lập trình viên Quốc tế DigiNxt
  • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại Hà Nội
  • LẬP TRÌNH GAME
    • Khóa học Lập trình Game Unity
  • LẬP TRÌNH WEB FRONT END
    • KHÓA HỌC PYTHON HƯỚNG ĐỐI TƯỢNG
    • KHÓA HỌC ANGULAR & TYPESCRIPT (FRONT END)
  • LẬP TRÌNH WEB BACK END
    • LẬP TRÌNH JAVA WEB VỚI FRAME WORK
    • Lập trình Web với Django
    • Lập trình PHP với Laravel Framework
  • CHƯƠNG TRÌNH ĐÀO TẠO ỨNG DỤNG CÔNG NGHỆ
    • Khóa học Tiền lương & Phúc lợi (C&B Excel) tại TP HCM
  • LẬP TRÌNH WEB FULL STACK
    • Khóa học Java Full stack (IJFD)
  • LẬP TRÌNH MOBILE
    • FRONT-END VỚI REACTJS VÀ REACT NATIVE
    • Lập trình Android Nâng cao
  • ĐÀO TẠO CHO DOANH NGHIỆP
    • KHÓA HỌC BUSINESS ANALYSIC TỪ CƠ BẢN ĐẾN NÂNG CAO 2023
    • Khóa học Magento: Làm chủ CMS TMĐT lớn nhất
    • Khóa học IOT: Xây dựng Sản phẩm IOT với Raspberry Pi
    • Khóa học Automation Testing Chuyên nghiệp
  • KHÓA HỌC DỰ ÁN
    • Học sử dụng bộ Office: Word, Excel, Power Point, Mail chuyên nghiệp
  • KHÓA HỌC KHÁC
    • VBA Excel Toàn Tập (Cơ Bản - Nâng Cao)
    • VBA Excel Nâng cao
    • Khóa học JMeter: Performance Testing
    • Khóa học Tester đạt chuẩn Quốc tế ISTQB Foundation Level
    • Khoá Học Tester đạt chuẩn quốc tế ISTQB Advanced Level
Bạn chưa chọn khóa học cần đăng ký
Tên không được để trống
Số điện thoại không được để trống
Email không được để trống
Đăng ký học thành công!
Cảm ơn bạn đã đăng ký học tại NIIT - ICT HÀ NỘI!