Menu
CoddyTech

Thêm điều kiện

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 52 trên 78.

Biểu thức tạo danh sách (list comprehension) còn mạnh hơn khi bạn thêm logic điều kiện. Nhờ đó, bạn có thể tạo danh sách mới từ các danh sách hiện có, lọc và biến đổi phần tử dựa trên các điều kiện đã xác định.

Cú pháp để thêm điều kiện vào biểu thức tạo danh sách là:

new_list = [expression for item in iterable if condition]

Dưới đây là giải thích về cú pháp:

  • new_list: Danh sách mới sẽ được tạo.
  • expression: Giá trị cần đưa vào new_list. Đây có thể là phiên bản đã chỉnh sửa của item.
  • for item in iterable: Vòng lặp duyệt qua từng phần tử trong iterable (ví dụ: danh sách, tuple hoặc range).
  • item: Phần tử hiện tại đang được xử lý trong vòng lặp.
  • if condition: Bộ lọc xác định liệu item hiện tại có nên được đưa vào new_list hay không. expression chỉ được đánh giá nếu condition là True.

Đây là một ví dụ:

numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# Đầu ra: [2, 4, 6]

Trong ví dụ này, cú pháp tạo danh sách tạo ra một danh sách mới có tên evens bằng cách lấy từng phần tử n từ danh sách numbers và chỉ thêm phần tử đó nếu nó là số chẵn (tức là n % 2 == 0).

challenge icon

Thử thách

Dễ

Tạo một hàm có tên filter_and_square nhận danh sách số numbers làm đối số. Hàm này cần dùng cú pháp tạo danh sách để tạo một danh sách mới chỉ gồm bình phương của các số dương trong danh sách ban đầu. Hàm cần trả về danh sách mới.

Tự làm thử

def filter_and_square(numbers):
    # Viết code tại đây
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

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