Mã thiết lập là một phần của mã cần thiết để bạn chạy mã chính thực hiện tất cả công việc tính toán Show Hãy nghĩ về tất cả các thư viện bạn đang nhập và các biến bạn đang khai báo. Nhiều dòng mã này đủ điều kiện là mã thiết lập
Bước 3 - Viết mã chính của bạn Mã chính về cơ bản là đoạn mã mà bạn muốn đo thời gian thực hiện Trong trường hợp này, chúng tôi muốn so sánh thời gian thực hiện của vòng lặp for với khả năng hiểu danh sách. Những đoạn mã đó sẽ đi vào mã chính
Bước 4 - Gọi hàm timeit Với cả hai câu lệnh main_code và setup_code đã được xác định, bạn có thể chuyển chúng dưới dạng tham số vào hàm timeit Tham số 5 nhận trong câu lệnh 6. Tham số 7 nhận trong câu lệnh 8. Tham số 9 lấy số lần thực hiện (theo mặc định là 1 triệu). Bạn có thể chuyển nhiều dòng mã như một phần của 6 và 8 trong hàm timeit của mình
Thời gian thực thi của mã thiết lập bị loại trừ khỏi kết quả Nhìn chung, đây là mã của bạn sẽ trông như thế nào
Đầu ra của chương trình trên là thời gian thực hiện (tính bằng giây) cho 10000 lần thực hiện. Để có thời gian cho mỗi lần thực hiện, hãy chia kết quả cho số lần thực hiện Hãy so sánh thời gian thực hiện của vòng lặp for với khả năng hiểu danh sách
Rõ ràng từ kết quả là việc hiểu danh sách hiệu quả hơn nhiều so với việc sử dụng vòng lặp for đơn giản Bạn sử dụng mô-đun timeit để đánh giá các phương thức khác nhau trong Python và tìm ra cách nhanh nhất Bạn cũng có thể lặp lại các cuộc gọi của mình đến hàm 2Giả sử bạn không chắc chắn về kết quả do timeit cung cấp. Bạn có thể chuyển một tham số bổ sung có tên là 3 vào hàm 4Phương pháp 4 tương tự như phương pháp 6, ngoại trừ, nó chấp nhận một tham số bổ sung 3 cho biết số lần phép đo điểm chuẩn phải được thực hiện
Điều này trả về cho bạn tất cả thời gian thực hiện gọi hàm 2. Nhưng cái nào trong 3 kết quả là đúng?Gợi ý rằng mức tối thiểu của danh sách kết quả là điều bạn nên tính đến. Các giá trị cao hơn có thể là nhiễu ảnh hưởng đến độ chính xác về thời gian của bạn Sử dụng timeit với các hàm Python (có đối số)Bạn cũng có thể sử dụng mô-đun timeit với các chức năng Hãy để chúng tôi thực hiện thí nghiệm đánh dấu băng ghế trên theo một cách khác. Chúng tôi sẽ viết các hàm cho từng cách tiếp cận
Khi bạn chạy đoạn mã trên, nó sẽ gửi cho bạn một NameError 0Bây giờ, tại sao vậy? Điều này là do với mô-đun timeit, mã của bạn chạy trong một không gian tên khác. Vì vậy, nó không nhận ra các chức năng bạn đã xác định trong không gian tên chung của mình. Để timeit nhận ra chức năng của bạn, bạn cần nhập nó vào cùng một không gian tên. Bạn có thể đạt được điều này bằng cách chuyển 9 đến đối số thiết lập 1Bây giờ mã của bạn sẽ hoạt động bình thường và trả về thời gian thực hiện (tính bằng giây) cho 10000 lần chạy của mỗi chức năng Tuy nhiên, cách trên có vẻ đầy đủ. Nếu bạn không muốn điều đó, bạn có thể chuyển hàm dựng sẵn 0 vào tham số 1 trong lớp timeit 2Bằng cách này, bạn không phải viết câu lệnh nhập khổng lồ đó mỗi lần Sử dụng timeit trên dòng lệnh trong PythonBây giờ các ví dụ trên phù hợp để đo thời gian thực thi của nhiều dòng mã với timeit. Nếu bạn muốn kiểm tra các đoạn mã rất nhỏ, một dòng, bạn cũng có thể thực hiện điều đó từ dòng lệnh 3Bây giờ ví dụ trên dựa trên giả định rằng hệ thống của bạn có cả Python 2 và Python 3. Nếu bạn chỉ có một phiên bản Python, bạn có thể sử dụng 2 trong dòng lệnh của mìnhBạn cũng có thể thêm nhiều đối số dòng lệnh ở trên -r, –lặp lại Bao nhiêu lần để lặp lại? -n, –số Bao nhiêu lần để thực hiện tuyên bố? -s, –thiết lập Mã thiết lập để thực thi câu lệnh chính -u, –đơn vị Đơn vị thời gian cho đầu ra hẹn giờ. Nó có thể là nsec, usec, msec hoặc sec Dưới đây là một ví dụ sử dụng các đối số trên 4Vì vậy, trên đây là tổng quan chi tiết về mô-đun timeit trong Python. Nếu bạn có một số ví dụ tốt hơn để chia sẻ, hãy chia sẻ với tôi trên Twitter Đơn vị nào là Timeit trong Python?Giá trị trả về là giây dưới dạng float. Đó là tổng thời gian cần thiết để chạy thử nghiệm (không tính thiết lập), do đó, thời gian trung bình cho mỗi thử nghiệm là con số đó chia cho đối số số, mặc định là 1 triệu.
Python Timeit có tính bằng giây không?Hàm timeit() trả về số giây cần thiết để thực thi mã .
Timeit hoạt động như thế nào Python?Python timeit() là một phương thức trong thư viện Python để đo thời gian thực thi của đoạn mã đã cho . Thư viện Python chạy câu lệnh mã 1 triệu lần và cung cấp thời gian tối thiểu lấy từ bộ đoạn mã đã cho.
Làm cách nào để đếm thời gian thực hiện trong Python?Sử dụng các hàm bên dưới để đo thời gian thực hiện chương trình trong Python. . thời gian. thời gian(). Đo tổng thời gian đã trôi qua để thực thi mã tính bằng giây thời gian. . %timeit và %%timeit. lệnh để lấy thời gian thực hiện của một dòng mã và nhiều dòng mã ngày giờ |