Hàm trong python

2
255
Bài số 18 trong 26 bài của series Python Không Khó

Trong bài viết này,Lập trình không khó sẽ cùng các bạn tìm hiểu về hàm trong python; Hàm là gì, cú pháp, thành phần và loại của hàm. Ngoài ra, bạn sẽ học cách tạo một hàm trong Python.

Hàm trong python là gì?

Hàm trong python  là một tập hợp các câu lệnh dùng để thực thi một tác vụ cụ thể. Các hàm chia chương trình thành các phần nhỏ hơn  và các mô-đun. Khi một chương trình càng phát triển thì các hàm cũng sẽ theo đó mà ngày càng đầy đủ và nhiều lệnh hơn.

Hơn nữa việc xây dựng các hàm  giúp bạn có thể tái sử dụng lại các đoạn mã.

Cú pháp

  • Từ khóa def dùng để khai báo một hàm.
  • Tên hàm xác định duy nhất hàm đó. Tên hàm được đặt phải tuân thủ các quy tắc đặt định danh trong python.
  • Các tham số thông qua đó chúng ta có thể truyền các tham số vào hàm.
  • Dấu : dùng để kết thúc việc khai báo hàm.
  • Một hay nhiều câu lệnh tạo nên khối lệnh và các khối lệnh này được viết thụt vào một khoảng( thường là 4 dấu cách, tương ứng là một dấu tab).

ví dụ:

Gọi hàm

Để gọi một hàm, ta sử dụng tên của hàm kèm theo đó là dấu ngoặc đơn:

Truyền tham số cho hàm

Các tham số được truyền ở bên trong dấu ngoặc đơn, bạn có thể thêm bao nhiêu tham số tùy thích, chỉ cần chúng được cách nhau bởi dấu phẩy.

Ví dụ sau có một hàm với một đối số (name). Khi hàm được gọi, chúng ta truyền một tên cho hàm, lệnh print được sử dụng bên trong hàm để in dòng chữ chào tên người được truyền:

kết quả:

Số lượng đối số

Theo mặc định, một hàm phải được gọi với số lượng đối số chính xác. Có nghĩa là nếu hàm của bạn cần 2 đối số, bạn phải gọi hàm với 2 đối số, không nhiều hơn và không ít hơn.

Tuy nhiên, nếu bạn không biết chính xác số lượng đối số cần truyền có thể sử dụng dấu *.

ví dụ:

Lệnh return

Câu lệnh return được sử dụng để thoát khỏi một hàm và trả về một giá trị:

Hàm trong python hoạt động như thế nào?

Phạm vi và thời gian tồn tại của biến

Phạm vi biến là một phần của chương trình nơi biến được nhận ra. Các tham  số và biến được định nghĩa trong một hàm không thể được nhìn thấy từ bên ngoài.

Thời gian tồn tại của một biến là khoảng thời gian kể từ lúc mà biến đó được khai báo cho tới khi kết thúc chương trình

Dưới đây là ví dụ minh họa về phạm vi của biến

Kết quả:

Trong ví dụ chúng ta có thể thấy rằng giá trị ban đầu của x là 20. Mặc dù hàm my_func() đã thay đổi giá trị x thành 10 nhưng nó không ảnh hưởng tới giá trị của x ở bên ngoài hàm.

Điều này là do biến x ở bên trong hàm là khác so với biến x ở bên ngoài hàm. Mặc dù chúng cùng tên, nhưng chúng là hai biến khác nhau với phạm vi khác nhau.

Để sửa đổi các biến ở bên ngoài hàm, chúng ta phải khai báo chúng là biến toàn cục với từ khóa global.

kết quả:

Trong ví dụ, chúng ta khai báo một biến toàn cục với từ khóa global, mặc dù lúc đầu khai báo x=10. Thế nhưng, sau khi gọi hàm my_func()thì giá trị của x vẫn không đổi.

Hàm pass

Một hàm khi được định nghĩa thì không thể trống, nhưng nếu vì một lý do nào đó mà cần có một hàm trống, hãy sử dụng lệnh pass để tránh bị thông báo lỗi.

ví dụ:

Đệ quy

Python chấp nhận đệ quy hàm, có nghĩa là một hàm được xác định có thể tự gọi nó.

Đệ quy là một khái niệm toán học và lập trình phổ biến. Nó có nghĩa là một hàm tự gọi nó ở bên trong thân. Các bạn nên cẩn thận với đệ quy, vì rất dễ để viết một hàm không bao giờ chấm dứt hoặc sử dụng quá nhiều bộ nhớ. Tuy nhiên, khi viết đệ quy chính xác có thể là một cách tiếp cận lập trình rất hiệu quả.

ví dụ: viết chương trình in ra dòng chữ “lập trình không khó”  5 lần dùng đệ quy

kết quả:

 

Hãy tham gia group lập trình không khó để cùng thảo luận về các vấn đề về lập trình.

Hẹn các bạn vào các bài học sau!!!

Các bài viết trong SeriesBài trước: Vòng lặp while trong pythonBài sau: Class và objects trong python

2 COMMENTS

LEAVE A REPLY

Please enter your comment!
Please enter your name here