Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah modul `timeit` Python boleh digunakan untuk mengukur masa pelaksanaan kod dengan berkesan?
Ujian Prestasi dengan Python's timeit: Panduan Langkah demi Langkah
Untuk menentukan masa pelaksanaan segmen kod tertentu, Python menawarkan modul timeit. Mari kita terokai cara menggunakannya dengan berkesan.
Pertimbangkan skrip Python berikut yang mengemas kini jadual pangkalan data:
<code class="python">import time import random import ibm_db # Open a file for writing results myfile = open("results_update.txt", "a") # Create a database connection conn = ibm_db.pconnect("dsn=myDB", "usrname", "secretPWD") # Prepare a parameterized update statement query_stmt = ibm_db.prepare(conn, "update TABLE set val = ? where MyCount >= '2010' and MyCount < '2012' and number = '250'") # Execute the update statement 100 times with different random values for r in range(100): rannumber = random.randint(0, 100) params = [rannumber] ibm_db.execute(query_stmt, params) myfile.write(str(rannumber) + "\n") # Close the file and connection myfile.close() ibm_db.close(conn)
Untuk menentukan masa pelaksanaan gelung dalam, kita boleh menggunakan time.time( ) atau time.clock(), yang mengembalikan masa semasa dalam beberapa saat:
<code class="python">t0 = time.time() # Start time # Code to be timed t1 = time.time() # End time total = t1 - t0
Walau bagaimanapun, timeit menawarkan pendekatan yang lebih komprehensif yang boleh purata berbilang larian dan memberikan hasil yang lebih tepat:
<code class="python">import timeit setup = """ import random import ibm_db conn = ibm_db.pconnect("dsn=myDB", "usrname", "secretPWD") query_stmt = ibm_db.prepare(conn, "update TABLE set val = ? where MyCount >= '2010' and MyCount < '2012' and number = '250'") params = [12] """ code = """ ibm_db.execute(query_stmt, params) """ timeit.Timer(code, setup).timeit(number=100) # Run the code 100 times</code>
Dalam kod ini, pembolehubah persediaan mengandungi kod yang perlu dilaksanakan sebelum setiap larian, seperti memulakan sambungan pangkalan data dan menyediakan pernyataan. Pembolehubah kod mengandungi kod yang akan ditetapkan masa. Argumen nombor menyatakan bilangan kali kod harus dijalankan.
Dengan menggunakan modul timeit, anda boleh memperoleh ukuran masa pelaksanaan kod yang tepat dan boleh dipercayai, membolehkan anda mengoptimumkan dan memantau prestasi aplikasi Python anda .
Atas ialah kandungan terperinci Bagaimanakah modul `timeit` Python boleh digunakan untuk mengukur masa pelaksanaan kod dengan berkesan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!