Menu
CoddyTech

Ôn tập: tính tổng danh sách lồng nhau

Thuộc phần Logic và luồng chương trình trong hành trình Python của Coddy. Bài học 62 trên 78.

challenge icon

Thử thách

Dễ

Viết một hàm đệ quy có tên sum_nested, nhận danh sách lồng nhau nested_list làm đối số. Hàm cần:

  1. Cộng tất cả số nguyên trong danh sách, bao gồm cả số nguyên trong mọi danh sách con.
  2. Trả về tổng dưới dạng số nguyên.

Bạn có thể kiểm tra xem một phần tử có phải là danh sách hay không bằng cách dùng isinstance(element, list)

Đầu vào ví dụ:

nested_list = [1, [2, 3], [4, [5, 6]], 7]

Đầu ra ví dụ:

28

Tự làm thử

def sum_nested(nested_list):
    total = 0
    for element in nested_list:
        if isinstance(element, list):  # Kiểm tra xem phần tử có phải là danh sách không
            # TODO: Gọi đệ quy hàm sum_nested với danh sách con rồi cộng kết quả vào total
            pass
        else:
            # TODO: Cộng trực tiếp số nguyên vào total
            pass
    return total

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch Python online