Trong bài viết này, chúng ta sẽ tìm hiểu về kiểu dữ liệu Function trong Python và sử dụng lệnh return.
Đặt vấn đề
Giả sử bạn đã viết một hàm để xử lí một công việc và bạn muốn lưu kết quả sau khi xử lí vào một biến. Tuy nhiên, bạn không thể làm điều đó vì nếu tạo ra một biến và lưu ngay trong hàm, thì nó không thể sử dụng được ở ngoài hàm (global).
Bạn có cách nào để đẩy dữ liệu sau khi xử lí ra bên ngoài không?
Giới thiệu lệnh return
Lệnh return chỉ sử dụng trong hàm (nếu bạn sử dụng ngoài hàm, sẽ bị lỗi).
Cú pháp của lệnh return như sau:
return [đối tượng]
Ở đây, "đối tượng" có thể là một số, một chuỗi, một danh sách, một tuple, một hàm, một lớp hoặc thậm chí là bỏ trống (khi đó đối tượng trả về được tính là None).
Khi lệnh return được gọi, hàm kết thúc và kết quả được trả ra bên ngoài. Kết quả này có thể được gán cho một biến, nếu không thì coi như bạn gọi hàm không có tác dụng gì.
Ví dụ:
def cal_rec_per(width, height):
per = (width + height) * 2
return per
rec_1_width = 5
rec_1_height = 3
rec_1_per = cal_rec_per(rec_1_width, rec_1_height) # Gán kết quả của hàm cho biến rec_1_per
print(rec_1_per) # In ra kết quả
print(cal_rec_per(7, 4)) # In ra kết quả trực tiếp
Hình ảnh minh họa
Ta cũng có thể sử dụng lệnh return để ngắt hàm:
def _return_ter_func():
print('Chúng ta sử dụng return để ngắt hàm')
return
print('Hàm print này không được gọi')
none = _return_ter_func()
print(type(none))
Hình ảnh minh họa
Sử dụng return để trả về nhiều giá trị cùng một lúc
Với Python, ta có thể trả về nhiều giá trị cùng một lúc bằng cách sử dụng unpack. Dưới đây là một ví dụ:
def cal_rec_area_per(width, height):
perimeter = (width + height) * 2
area = width * height
return perimeter, area
rec_width = 3
rec_height = 9
rec_per, rec_area = cal_rec_area_per(rec_width, rec_height)
print(rec_per, rec_area)
Hình ảnh minh họa
Kết luận
Qua bài viết này, bạn đã nắm vững về lệnh return trong hàm và kiểu dữ liệu Function trong Python.
Trong bài viết tiếp theo, chúng ta sẽ tìm hiểu về một lệnh khác tương tự return, nhưng phức tạp hơn nhiều.
Cảm ơn bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý để chúng ta có thể phát triển bài viết tốt hơn. Đừng quên thực hành và thử thách mình để không ngừng tiến bộ!