Python

Python xrange vs. jarak

Python xrange vs. jarak
Sampai versi Python 2.x, ada total dua metode dasar yang digunakan dalam bahasa ini untuk menghasilkan daftar bilangan bulat dalam rentang yang disediakan. Kedua metode tercantum di bawah ini:

jarak ()
rentang x()

Ke depan, dengan versi terbaru Python (3 dan seterusnya), range () ditarik, dan xrange () kemudian diubah menjadi range (). Sekarang di Python 3, hanya ada satu fungsi untuk metode ini, yaitu.e., jarak (). Dalam Python 3, fungsi range () hanyalah cara lain untuk mengimplementasikan versi lama xrange() dari python 2.x. Di sini, kita akan menghubungkan keduanya.

Xrange ()

The xrange () digunakan untuk membuat urutan angka seperti fungsi range ().

Sintaksis

Sintaks yang digunakan untuk mendefinisikan xrange() adalah:

xrange (mulai, akhir, langkah)

Fungsi ini digunakan untuk menentukan rentang angka mulai dari (disertakan) hingga akhir (tidak disertakan).

Parameter

Berikut adalah daftar parameter yang diperlukan:

Mulai: Posisi awal dari urutan nomor
End: Posisi akhir dari urutan nomor
Langkah: Perbedaan antara dua angka berurutan dalam deret.

Contoh

Dalam contoh berikut, kita akan memeriksa cara untuk mendefinisikan xrange.

Di sini, kami hanya akan menentukan posisi akhir.

Jadi, nilai akhir ditetapkan sebagai 5, dan kemudian kita mendapatkan posisi akhir yang dicetak, seperti yang ditunjukkan di bawah ini:

Sekarang, kita akan melihat metode jangkauan panggilan, sintaks untuk memanggil akhir adalah:

>>> x = xrange(akhir)

Kemudian kami akan mencetaknya.

Kami akan mendapatkan rentang dalam output, seperti yang ditunjukkan di atas.

Sekarang, kita akan mendefinisikan titik awal dan titik akhir. Di sini, titik awalnya adalah 2, dan titik akhir adalah 5. Kami kemudian mencetak posisi awal dan akhir, seperti yang ditunjukkan di bawah ini:

Setelah ini, kami akan membuat urutan angka dari titik awal dan akhir kami, i.e., 2 sampai 5.

>>> y = xrange(mulai, akhir)

Akhirnya, kita akan memeriksa metode mendefinisikan titik awal, langkah, dan titik akhir ending. Setelah kami mendefinisikan ketiga parameter; kita akan memanggil mereka mirip dengan metode yang ditunjukkan di bawah ini:

Sekarang, untuk memanggil xrange untuk ketiga parameter ini, kita akan menggunakan sintaks berikut:

>>> z = xrange (mulai, langkah, akhir)

Jarak ()

Range () digunakan untuk membuat daftar dan merupakan fungsi yang lebih cepat untuk beberapa iterasi.

Sintaksis

Sintaks berikut digunakan:

>>> rentang (mulai, akhir, langkah)

Contoh

Untuk kasus pertama, kita akan mendefinisikan nilai akhir. Sintaks yang digunakan untuk ini adalah:

>>> rentang (akhir)

Jadi, dalam contoh yang diberikan di bawah ini, kita akan menggunakan 3 sebagai nilai akhir rentang. Saat kami mencetaknya, itu mengembalikan nilai, tidak termasuk nilai akhir.

Dalam contoh berikutnya, kami menggunakan contoh yang menggambarkan titik awal dan akhir. Nilai akan dimulai dari 1 dan berakhir pada 10 (dengan mengecualikannya). Titik awal disertakan, tetapi titik akhir dihilangkan. Sintaksnya mirip dengan yang diberikan di bawah ini:

>>> rentang (mulai, akhir)

Jadi, kami mendefinisikan titik awal dan kemudian titik akhir, yang masing-masing adalah 1 dan 10.

Sekarang, dalam contoh berikutnya, kita akan memiliki fungsi langkah. Fungsi yang mendefinisikan celah antara dua titik mana pun dalam barisan. Nilai akan dimulai dari 0 dan berakhir pada 10 (dengan mengecualikannya). Sintaks yang digunakan diberikan di bawah ini:

>>> rentang (mulai, langkah, akhir)

Contoh diberikan di bawah ini, di mana 2 adalah nilai langkah.

Keuntungan

jarak ()

Lebih cepat jika iterasi dilakukan beberapa kali. range () hanya memiliki nilai objek integer waktu nyata. Dalam hal memori, itu tidak berjalan dengan baik.

rentang x()

Itu harus membuat ulang objek integer setiap saat. xrange() tidak karena tidak mendukung metode irisan dan daftar. xrange() membutuhkan jumlah memori yang sama. Jadi, sejauh menyangkut kinerja, terutama ketika pengguna mengulangi nilai rentang yang lebih besar, xrange() berkinerja jauh lebih baik.

Kesamaan antara rentang Python 2 dan Python 3 dan xrange

Xrange Python 2 memiliki representasi deskriptif dalam bentuk string, yang sangat mirip dengan nilai objek range Python 3.

Nilai xrange() dalam Python 2 dapat diubah, begitu juga rang() dalam Python 3.

xrange() dan range() keduanya memiliki nilai langkah, akhir, dan titik awal. Dalam kedua kasus, langkah adalah bidang opsional, begitu juga nilai awal.

Baik xrange Python 2 dan 3 mendukung panjang yang dapat diindeks dalam urutan maju atau mundur. Berikut adalah contoh yang sama:

Perbedaan antara range() dan xrange()

Karena xrange() mengevaluasi hanya objek generator dengan nilai yang dibutuhkan oleh lazy evaluation, maka lebih cepat untuk mengimplementasikannya pada range(). range() membantu mengembalikan daftar dan memiliki semua objek yang dapat digunakan, sedangkan xrange() mengembalikan objek yang terkait dengan daftar dan tidak dapat diterapkan padanya sehingga kita dapat menghitungnya sebagai kerugian.

Variabel yang digunakan dalam fungsi range() menyimpan nilai range dan dengan demikian membutuhkan banyak memori dibandingkan dengan xrange() yang hanya membutuhkan sebagian memori karena variabel. range () mengembalikan objek rentang sedangkan, xrange () mengembalikan objek generator.

Fungsi range (1, 7, 2) akan mengembalikan output [1, 3, 5] dan input xrange (1, 7, 2) akan menghasilkan output [1, 3, 5]. Begitulah cara kita dapat mengasumsikan bahwa mereka serupa dalam polanya.

Kesimpulan

range() dan xrange() keduanya memiliki karakteristik yang berbeda, seperti yang dibahas di atas. Semua perbandingan yang disebutkan dalam tutorial ini, bersama dengan contoh, akan membantu pembaca untuk memilih metode yang lebih disukai berdasarkan kebutuhan mereka.

Cara Menggunakan AutoKey untuk Mengotomatiskan Game Linux
AutoKey adalah utilitas otomatisasi desktop untuk Linux dan X11, diprogram dengan Python 3, GTK dan Qt. Dengan menggunakan skrip dan fungsionalitas MA...
Cara Menampilkan Penghitung FPS di Game Linux
Game Linux mendapat dorongan besar ketika Valve mengumumkan dukungan Linux untuk klien Steam dan game mereka pada tahun 2012. Sejak itu, banyak game A...
Cara mengunduh dan Memainkan Civilization VI Sid Meier di Linux
Pengenalan permainan Civilization 6 adalah konsep modern dari konsep klasik yang diperkenalkan dalam seri game Age of Empires. Idenya cukup sederhana;...