Bắt đầu ngayBắt đầu miễn phí

Hàm lồng nhau I

Trong video trước, bạn đã học về cách lồng hàm bên trong hàm. Một lý do để làm vậy là tránh phải lặp lại cùng một phép tính trong các hàm nhiều lần. Việc định nghĩa hàm lồng nhau không có gì mới: bạn chỉ cần định nghĩa nó như một hàm thông thường với def và đặt nó bên trong một hàm khác!

Trong bài tập này, bên trong hàm three_shouts(), bạn sẽ định nghĩa một hàm lồng nhau inner() để nối một chuỗi với !!!. Sau đó, three_shouts() sẽ trả về một tuple gồm ba phần tử, mỗi phần tử là một chuỗi đã được nối với !!! thông qua inner(). Bắt đầu thôi!

Bài tập này là một phần của khóa học

Giới thiệu về Functions trong Python

Xem khóa học

Hướng dẫn bài tập

  • Hoàn thiện phần đầu hàm của hàm lồng nhau với tên hàm inner() và một tham số word.
  • Hoàn thiện giá trị trả về: mỗi phần tử của tuple phải là một lần gọi inner(), truyền các tham số từ three_shouts() làm đối số cho từng lần gọi.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Define three_shouts
def three_shouts(word1, word2, word3):
    """Returns a tuple of strings
    concatenated with '!!!'."""

    # Define inner
    def ____(____):
        """Returns a string concatenated with '!!!'."""
        return word + '!!!'

    # Return a tuple of strings
    return (____, ____, ____)

# Call three_shouts() and print
print(three_shouts('a', 'b', 'c'))
Chỉnh sửa và Chạy Mã