Python

Modul waktu Python

Modul waktu Python

Pemrograman bukan hanya tentang menyelesaikan tugas dan mendapatkan output yang ingin kita dapatkan. Ini juga tentang seberapa cepat sebuah program berjalan dan dieksekusi sehingga output yang diinginkan tercapai. Dengan sebagian besar bahasa pemrograman, tidak mudah untuk membandingkan seberapa cepat program telah berjalan dan tidak pernah mudah untuk mengatur waktu bagian kode tertentu untuk memahami bagian mana dari kode kita yang membutuhkan waktu paling banyak untuk dieksekusi. Ini adalah masalah yang diselesaikan oleh Python waktu modul.

Modul waktu Python

Python waktu module memungkinkan kita untuk mengatur waktu eksekusi sepotong kode tanpa memperhitungkan proses latar belakang yang dijalankan untuk membuat kode dapat dieksekusi. Jika Anda memerlukan pengukuran yang sedikit akurat tentang kinerja kode Anda waktu adalah modul untuk pergi untuk.

waktuit contoh sederhana

Kita akan mulai dengan menggunakan modul timeit langsung dari command prompt. modul timeit dapat digunakan langsung dari CLI di mana kita dapat memasukkan pernyataan loop sederhana dan mengatur waktu menggunakan perintah yang ditunjukkan:

$ python --versi
$ python -m waktu '"&".join(str(n) untuk n dalam range(1000))'
$ python -m waktu '"&".join([str(n) untuk n dalam range(1000)])'
$ python -m waktu '"&".gabung(peta(str, rentang(1000)))'

Inilah yang kami dapatkan kembali dengan perintah ini:

Waktu eksekusi dari CLI menggunakan timeit

Di salah satu bagian selanjutnya, kita akan mempelajari bagaimana kita dapat mengatur jumlah loop yang dilakukan untuk menemukan jumlah optimal untuk eksekusi ekspresi yang diberikan.

Mengatur waktu sepotong kode

Jika Anda memiliki skrip python dasar yang ingin Anda ukur waktunya, modul timeit adalah caranya:

waktu impor
# kode pengaturan dijalankan hanya sekali
setup_code = "dari matematika impor sqrt"
# cuplikan kode utama untuk pemeriksaan kinerja
code_to_measure = "'
contoh def():
daftar saya = []
untuk x dalam rentang (100):
daftarku.tambahkan(kuadrat(x))
'"
# pernyataan waktu
cetak (waktu.waktu(pengaturan = setup_code,
stmt = code_to_measure,
bilangan = 10000))

Mari kita lihat output untuk perintah ini:

Mengatur waktu satu putaran

Dalam kode ini, kami juga melihat bagaimana kami dapat mengontrol jumlah pengulangan yang akan dilakukan modul timeit untuk menemukan waktu eksekusi terbaik untuk program.

Ukur waktu untuk kode multi-baris dari CLI

Kami juga dapat mengukur waktu untuk kode yang membentang melalui beberapa baris di Python CLI. Mari kita lihat contoh program untuk melihat ini:

$ python -m waktu -s \
> "linuxhint = " \
> "untuk n dalam rentang(1000):" \
> "linuxhint[str(n)] = n"

Inilah yang kami dapatkan kembali dengan perintah ini:

Pengaturan waktu kode multi-baris pada CLI

Umumnya membandingkan dua blok kode

Jika Anda tidak ingin repot menggunakan CLI dan hanya ingin membandingkan dua program Python sehingga Anda tahu mana yang berjalan lebih cepat, ada cara yang cukup sederhana untuk mencapai ini:

waktu impor
mulai = waktu.default_timer()
fungsiSatu()
cetak (waktu.default_timer() - mulai)
mulai = waktu.default_timer()
fungsiDua()
cetak (waktu.default_timer() - mulai)

Dengan menggunakan fungsi default_timer(), kita memulai waktu lagi dan lagi untuk menemukan perbedaan yang sama saat terakhir kali dimulai. Ini hanya dapat digunakan jika Anda memiliki gaya penulisan kode modular yang baik sehingga setiap bagian kode dapat diukur secara terpisah.

Kesimpulan

Dalam pelajaran ini, kami mempelajari bagaimana kami dapat mengatur waktu kode kami dengan Python dan melihat kompleksitas dan efisiensi waktu mereka dan mengatasinya jika kode terlalu lambat.

Tombol tengah mouse tidak berfungsi di Windows 10
Itu tombol tengah mouse membantu Anda menelusuri halaman web dan layar yang panjang dengan banyak data. Jika itu berhenti, Anda akhirnya akan mengguna...
Cara Mengganti Tombol Kiri & Kanan Mouse di PC Windows 10
Sudah menjadi hal biasa bahwa semua perangkat mouse komputer dirancang secara ergonomis untuk pengguna yang tidak kidal. Tetapi ada perangkat mouse ya...
Tiru klik Mouse dengan mengarahkan mouse menggunakan Clickless Mouse di Windows 10
Menggunakan mouse atau keyboard dalam posisi yang salah dari penggunaan yang berlebihan dapat menyebabkan banyak masalah kesehatan, termasuk keteganga...