Đo thời gian II
Như đã thảo luận trong phần bài giảng, trong đa số trường hợp, list comprehension chạy nhanh hơn vòng lặp for.
Trong phần minh họa này, bạn sẽ thấy một trường hợp mà list comprehension và vòng lặp for có sự khác biệt về hiệu suất rất nhỏ, đến mức chọn cách nào thì tác vụ đơn giản này cũng chạy gần như tức thì.
Trong danh sách words, có các từ ngẫu nhiên được tải từ Internet. Mục tiêu là tạo một danh sách khác tên listlet trong đó chỉ giữ lại những từ bắt đầu bằng chữ cái b.
Nếu bạn chưa quen thao tác với chuỗi trong Python, mỗi chuỗi có thuộc tính .startswith(), trả về True/False để cho biết chuỗi có bắt đầu bằng một ký tự/cụm ký tự cụ thể hay không.
Bài tập này là một phần của khóa học
Viết mã hiệu quả với pandas
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.
# Store the time before the execution
start_time = time.___()
# Execute the operation
letlist = [wrd for wrd in words if wrd.startswith('b')]
# Store and print the difference between the start and the current time
total_time_lc = time.time() - ___
print('Time using list comprehension: {} sec'.format(total_time_lc))