Một xem xét nhanh hàm là gì và chúng làm việc như thế nào
Bạn đã sử dụng các hàm tích hợp từ học phần trước, và trong những học phần tiếp theo đó đã thảo luận ngắn về làm
cách nào định nghĩa các hàm để bạn có thể sử dụng chúng trong các case studies. Trước khi đào sâu vào việc sử dụng
các hàm trong thiết kế các chương trình, nó sẽ là ý tưởng tốt để xem xét chúng ta gần đây đã học gì về hàm.
1. Một hàm đóng gói một thuật toán trong một khối code cái bạn có thể gọi theo tên. Ví dụ, hàm reply trong chương
trình doctor của học phần trước xây dựng và trả về một doctor’s reply đối với một patient’s sentence.
2. Một hàm có thể được gọi từ bất cứ đâu trong code một chương trình, bao gồm code bên trong các hàm khác. Suốt
thực thi chương trình, có thể có một móc xích phức tạp các lời gọi hàm, nơi một hàm gọi hàm khác và chờ cho kết
quả của nó được trả về…vv..Ví dụ, trong chương trình doctor, hàm main gọi hàm reply, cái đến lượt nó gọi hàm
changePerson. Kết quả của changePerson được trả về reply, kết quả của nó được trả về main.
3. Một hàm có thể nhận dữ liệu từ nơi gọi của nó thông qua các đối số. Ví dụ, hàm reply của chương trình doctor
mong đợi một đối số – một string trình bày patient’s sentence. Tuy nhiên, một vài hàm, như những cái của chương
trình sentence generator trong học phần trước, cần không đối số để làm công việc của chúng.
4. Khi một hàm được gọi, bất cứ biểu thức cung cấp như các đối số được đánh giá trước tiên. Các giá trị của chúng
được copy tới các vị trí lưu trữ tạm có tên theo các tham số trong định nghĩa hàm. Các tham số đóng cùng vai trò
như các biến trong code cái hàm sau đó sẽ thực thi.
5. Một hàm có thể có một hay nhiều hơn các phát biểu return, mục đích của nó là chấm dứt thực thi hàm và trả quyền
kiểm soát về nơi gọi của nó. Một phát biểu return có thể được theo sau bởi một biểu thức. Trong trường hợp đó,
Python đánh giá biểu thức và làm giá trị của nó có sẵn đối với nơi gọi khi hàm dừng thực thi. Ví dụ, hàm reply
của chương trình doctor trả về hoặc giá trị trả về bởi hàm random.choice hoặc là giá trị trả về bởi hàm changePerson.
Nếu một hàm không bao gồm một phát biểu return, Python tự động trả về giá trị None về nơi gọi.
Với nhắc nhớ lại về việc sử dụng và hành vi của hàm, bạn bây giờ đã sẵn sàng để giải quyết các điểm xinh đẹp hơn của
thiết kế chương trình với các hàm.