Python xrange vs range

Python Xrange Vs Range



Hingga Python versi 2.x, ada dua kaedah mendasar yang digunakan dalam bahasa ini untuk menghasilkan senarai bilangan bulat dalam julat yang disediakan. Kedua-dua kaedah tersebut disenaraikan di bawah:

julat ()
xrange ()







Melangkah ke hadapan, dengan versi terbaru Python (3 dan seterusnya), julat () ditarik, dan xrange () kemudian diubah menjadi julat (). Sekarang di Python 3, hanya ada satu fungsi untuk kaedah ini, iaitu, range (). Dalam Python 3, fungsi range () hanyalah cara lain untuk melaksanakan versi xrange () python 2.x yang lebih lama. Di sini, kita akan mengaitkan keduanya.



Xrange ()

Xrange () digunakan untuk membuat urutan nombor seperti fungsi range ().



Sintaks

Sintaks yang digunakan untuk menentukan xrange () adalah:





xrange(mulakan,akhir,langkah)

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

Parameter

Berikut adalah senarai parameter yang diperlukan:



& emsp; Mula: Kedudukan permulaan turutan nombor
& emsp; Tamat: Kedudukan akhir turutan nombor
& emsp; Langkah: Perbezaan antara dua nombor berturut-turut dalam siri ini.

Contoh

Dalam contoh berikut, kami akan memeriksa cara untuk menentukan xrange.

Di sini, kita akan menentukan kedudukan akhir sahaja.

Jadi, nilai akhir ditetapkan sebagai 5, dan kemudian kita mencetak kedudukan akhir, seperti yang ditunjukkan di bawah:

Sekarang, kita akan melihat kaedah jangkauan panggilan, sintaks untuk menamatkan panggilan adalah:

>>>x= xrange(akhir)

Kemudian kami akan mencetaknya.

Kami akan mendapat julat output, seperti yang ditunjukkan di atas.

Sekarang, kita akan menentukan titik permulaan dan titik akhir. Di sini, titik permulaan adalah 2, dan titik akhir adalah 5. Kami kemudian mencetak kedudukan permulaan dan akhir, seperti yang ditunjukkan di bawah:

Selepas ini, kami akan membuat urutan nombor dari titik permulaan dan akhir kami, iaitu 2 hingga 5.

>>>dan= xrange(mulakan,akhir)

Akhirnya, kami akan memeriksa kaedah menentukan titik permulaan, langkah, dan titik akhir. Setelah kami menentukan ketiga-tiga parameter; kami akan memanggil mereka serupa dengan kaedah yang ditunjukkan di bawah:

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

>>>Dengan= xrange(mulakan,langkah,akhir)

Julat ()

Range () digunakan untuk membuat daftar dan merupakan fungsi yang lebih cepat untuk pelbagai lelaran.

Sintaks

Sintaks berikut digunakan:

>>> julat(mulakan,akhir,langkah)

Contoh

Untuk kes pertama, kita akan menentukan nilai akhir. Sintaks yang digunakan untuk ini adalah:

>>> julat(akhir)

Jadi, dalam contoh yang diberikan di bawah, kita akan menggunakan 3 sebagai nilai akhir julat. Apabila kami mencetaknya, ia mengembalikan nilai, tidak termasuk nilai akhir.

Dalam contoh seterusnya, kami menggunakan contoh untuk menerangkan titik permulaan dan akhir. Nilai akan bermula dari 1 dan berakhir pada 10 (dengan tidak termasuk). Titik permulaan disertakan, tetapi titik akhir dihilangkan. Sintaksnya serupa dengan yang diberikan di bawah:

>>> julat (mulakan,akhir)

Oleh itu, kita menentukan titik permulaan dan kemudian titik akhir, yang masing-masing adalah 1 dan 10.

Sekarang, dalam contoh seterusnya, kita akan mempunyai fungsi langkah. Fungsi yang menentukan jurang antara dua titik dalam urutan. Nilai akan bermula dari 0 dan berakhir pada 10 (dengan tidak termasuk). Sintaks yang digunakan diberikan di bawah:

>>> julat (mulakan,langkah,akhir)

Contohnya diberikan di bawah, di mana 2 adalah nilai langkah.

Kelebihan

julat ()

Lebih cepat jika lelaran dilakukan berkali-kali. range () hanya mempunyai nilai objek integer masa nyata. Dari segi ingatan, ia tidak dapat dilaksanakan dengan baik.

xrange ()

Ia mesti membuat objek integer setiap masa. xrange () bukan kerana tidak menyokong kaedah slice dan senarai. xrange () mengambil jumlah memori yang sama. Oleh itu, sejauh mana prestasi, terutamanya ketika pengguna melakukan iterasi pada nilai julat yang lebih besar, xrange () berkinerja lebih baik.

Kesamaan antara julat dan xrange Python 2 dan Python 3

Xrange Python 2 mempunyai representasi deskriptif dalam bentuk rentetan, yang sangat mirip dengan nilai objek jarak Python 3.

Nilai xrange () dalam Python 2 boleh diulang, begitu juga rang () di Python 3.

xrange () dan range () keduanya mempunyai nilai langkah, akhir, dan titik permulaan. Dalam kedua kes, langkah adalah medan pilihan, begitu juga dengan nilai permulaan.

Kedua-dua panjang sokongan Python 2 dan 3 yang boleh diindeks dalam urutan hadapan atau terbalik. Berikut adalah contoh yang sama:

Perbezaan antara julat () dan xrange ()

Oleh kerana xrange () hanya menilai objek penjana dengan nilai-nilai yang diperlukan oleh penilaian malas, lebih cepat untuk dilaksanakan di atas julat (). range () membantu mengembalikan senarai dan mempunyai semua objek yang dapat digunakan, sedangkan xrange () mengembalikan objek yang berkaitan dengan senarai dan tidak dapat diterapkan padanya sehingga kita dapat menghitungnya sebagai kerugian.

Pemboleh ubah yang digunakan dalam fungsi range () menyimpan nilai range dan dengan itu mengambil banyak memori berbanding xrange () yang hanya mengambil sebahagian memori kerana pembolehubah. range () mengembalikan objek jangkauan sedangkan, xrange () mengembalikan objek penjana.

Fungsi julat (1, 7, 2) akan mengembalikan output [1, 3, 5] dan xrange input (1, 7, 2) akan menghasilkan output [1, 3, 5]. Begitulah cara kita menganggap bahawa coraknya serupa.

Kesimpulannya

range () dan xrange () kedua-duanya mempunyai ciri yang berbeza, seperti yang dibincangkan di atas. Semua perbandingan yang disebutkan dalam tutorial ini, bersama dengan contohnya, akan membantu pembaca memilih kaedah pilihan mereka dengan lebih baik berdasarkan keperluan mereka.