Estimasi Waktu Baca: 2 menit

Deskripsi Fungsi

Fungsi range() digunakan untuk mengembalikan deret bilangan bulat (integer) secara berurutan pada kisaran (range) yang sudah ditentukan dari start sampai stop.

Sintaks dan Paramater

Ada dua bentuk sintaks range() antara lain


>>> range(stop)

>>> range(start, stop[, step])

Fungsi range() menerima tiga parameter yaitu:

  • start – bilangan bulat (integer) awal sebelum dimulainya urutan (batas awal)
  • stop – bilangan bulat (integer) akhir sebelum dikembalikan (batas akhir). Urutan akan berakhir di stop – 1.
  • step – bilangan bulat (integer) yang menentukan interval atau kenaikan antara setiap bilangan

Fungsi range() mengembalikan nilai berupa objek deret angka berurut yang bersifat immutable tergantung dari definisi sintaks yang diberikan

range(stop)

  • mengembalikan urutan angka mulai dari 0 sampai stop-1
  • mengembalikan urutan kosong jika stop bernilai negatif atau 0

range(start, stop[, step])

Nilai kembalian akan dihitung menggunakan rumus berikut dengan batasan yang diberikan


r[n] = start + step*n (untuk step positif dan negatif)
dimana, n >= 0 dan r[n] < stop (untuk step positif)
dimana, n >= 0 dan r[n] > stop (untuk step negatif)
  • Bila tanpa step – step akan secara default bernilai satu dan mengembalikan urutan angka dari start dan berakhir di stop-1
  • Bila step bernilai 0 – maka akan memunculkan pesan ValueError
  • Bila step bernilai selain 0 – maka akan diperiksa apakah batasan nilai terpenuhi dan mengembalikan urutan sesuai dengan rumus. Jika tidak memenuhi batasan nilai maka urutan kosong akan dikembalikan

Contoh Penerapan

Bagaimana Fungsi range() Bekerja


>>> # range kosong
... print(list(range(0)))
[]

>>> # menggunakan range(stop)
... print(list(range(10)))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> # menggunakan range(start, stop)
... print(list(range(1, 10)))
[1, 2, 3, 4, 5, 6, 7, 8, 9]

Membuat Range dengan Step


>>> start = 2
>>> stop = 30
>>> step = 2
>>> print(list(range(start, stop, step)))
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]

>>> print(list(range(5, 100, 5)))
[5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95]

Membuat Range dengan Step Negatif


>>> start = 2
>>> stop = -30
>>> step = -2
>>> print(list(range(start, stop, step)))
[2, 0, -2, -4, -6, -8, -10, -12, -14, -16, -18, -20, -22, -24, -26, -28]

>>> print(list(range(5, -100, -5)))
[5, 0, -5, -10, -15, -20, -25, -30, -35, -40, -45, -50, -55, -60, -65, -70, -75, -80, -85, -90, -95]