Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Python range() Fungsi:Float, List, For loop Contoh

Apa itu Rentang Python?

Python range() adalah fungsi bawaan yang tersedia dengan Python dari Python(3.x), dan memberikan urutan angka berdasarkan indeks awal dan akhir yang diberikan. Jika indeks awal tidak diberikan, indeks dianggap sebagai 0, dan akan menambah nilai sebesar 1 sampai indeks berhenti.

Misalnya range(5) akan menampilkan nilai Anda 0,1,2,3,4 .The Python range() adalah perintah yang sangat berguna dan sebagian besar digunakan ketika Anda harus mengulangi menggunakan for loop.

Dalam tutorial ini, Anda akan mempelajari:

Sintaks

range(start, stop, step)

Parameter

Nilai pengembalian:

Nilai yang dikembalikan adalah urutan angka dari indeks awal hingga akhir yang diberikan.

Rentang Python() Fungsi dan riwayat

Python range() telah diperkenalkan dari python versi 3, sebelum itu xrange() adalah fungsinya.

Baik range dan xrange() digunakan untuk menghasilkan urutan angka.

Berikut adalah perbedaan antara range dan xrange():

rentang() xrange()
Rentang() memberikan urutan angka dan mengembalikan daftar angka. Fungsi xrange() memberikan objek generator yang perlu di-loop dalam for-loop untuk mendapatkan nilainya.
Rentang() mengembalikan daftar. xrange() mengembalikan objek generator.
Metode range() menggunakan lebih banyak memori karena daftar yang dikembalikan harus disimpan dibandingkan dengan xrange(). Karena xrange() mengembalikan objek generator, itu tidak memberikan nilai secara instan dan harus digunakan di dalam for-loop untuk mendapatkan nilai.
Penggunaan memori lebih banyak sehingga eksekusi kode lambat saat bekerja pada kumpulan data yang besar. Eksekusi kode lebih cepat menggunakan xrange().

Menggunakan rentang()

Contoh ini menunjukkan cara mencetak nilai dari 0-9 menggunakan range().

Nilai yang digunakan dalam range adalah 10, sehingga outputnya adalah 0 1 2 3 4 5 6 7 8 9

Sejak awal tidak diberikan awal dianggap sebagai 0 dan nilai terakhir diberikan sampai 9. Nilai terakhir selalu 1 kurang dari nilai yang diberikan yaitu stop-1.

for i in range(10):
    print(i, end =" ")

Keluaran:

0 1 2 3 4 5 6 7 8 9

Menggunakan start dan stop dalam range()

Dalam kode, nilai awal adalah 3, dan nilai berhenti adalah 10. Di sini indeks awal adalah 3, jadi urutan angka akan dimulai dari 3 hingga nilai berhenti. Nilai terakhir dalam urutan akan lebih kecil 1 dari nilai stop 10-1 =9.

for i in range(3, 10):
    print(i, end =" ")

Keluaran:

3 4 5 6 7 8 9

Menggunakan start, stop, dan step

Nilai awal adalah 3, sehingga urutan angka akan dimulai dari 3. Nilai berhenti adalah 10, sehingga urutan angka akan berhenti di (10-1) yaitu 9. Langkahnya adalah 2, sehingga setiap nilai dalam urutan akan bertambah 2. Jika nilai langkah tidak diberikan, nilai untuk langkah default ke 1.

for i in range(3, 10, 2):
    print(i, end =" ")

Keluaran:

3 5 7 9

Sejauh ini, kita telah melihat bagaimana fungsi range() memberikan nilai tambahan untuk nilai stop yang diberikan. Sekarang mari kita coba contoh untuk mendapatkan nilai yang dikurangi dalam rentang yang diberikan.

Meningkatkan nilai dalam rentang menggunakan langkah positif.

Langkah parameter dalam range() dapat digunakan untuk menambah/mengurangi nilai. Secara default, ini adalah nilai positif 1. Jadi akan selalu memberikan nilai yang bertambah.

Nilai langkah harus positif jika Anda ingin nilai yang bertambah sebagai keluaran.

for i in range(1, 30, 5):
    print(i, end =" ")

Keluaran:

1 6 11 16 21 26

Rentang Terbalik:Mengurangi nilai menggunakan langkah negatif.

Langkah parameter dengan nilai negatif dalam range() dapat digunakan untuk mendapatkan nilai yang dikurangi. Pada contoh di bawah nilai langkah negatif sehingga output akan dikurangi dari nilai rentang yang diberikan.

for i in range(15, 5, -1):
    print(i, end =" ")

Keluaran:

15 14 13 12 11 10 9 8 7 6

Nilai awal adalah 15, nilai berhenti adalah 5 dan nilai langkah adalah angka negatif yaitu -1. Dengan input di atas fungsi range() akan menurunkan nilai dari 15 dan seterusnya hingga mencapai nilai stop , tetapi di sini perbedaannya adalah nilai terakhir akan menjadi stop + 1.

Menggunakan angka mengambang dalam rentang Python()

Sekarang mari kita bekerja pada range() menggunakan angka floating-point.

Contoh:

for i in range(10.5):
    print(i, end =" ")

Dalam contoh di atas kita telah menggunakan nilai stop sebagai 10.5.

Outputnya adalah :

Traceback (most recent call last):
  File "python_range.py", line 1, in <module>
    for i in range(10.5):
TypeError: 'float' object cannot be interpreted as an integer

Python memberikan kesalahan karena fungsi range() tidak mendukung angka floating-point untuk memulai, menghentikan, dan melangkah.

Menggunakan for-loop dengan rentang Python()

Dalam contoh ini kita akan menggunakan array angka dan, mari kita lihat bagaimana menggunakan iterasi array di dalam for-loop menggunakan range()

Contoh:

arr_list = ['Mysql', 'Mongodb', 'PostgreSQL', 'Firebase']

for i in range(len(arr_list)):
    print(arr_list[i], end =" ")

Keluaran:

MysqlMongodb PostgreSQL Firebase

Dalam contoh di atas kita telah menggunakan len(arr_list) sebagai nilai stop. Perulangan for akan berulang hingga nilai stop yaitu panjang array dan itu akan menjadi 4, karena kami memiliki empat item dalam arr_list. Nilai awal akan menjadi 0 dan langkah akan menjadi 1.Jadi nilai akan dimulai dari 0 dan akan berhenti pada 3 yaitu panjang array -1 yang berarti 4 -1 =3.

Menggunakan rentang Python() sebagai daftar

Dalam contoh ini akan melihat bagaimana memanfaatkan output dari range sebagai daftar.

Contoh:

print(list(range(10)))

Keluaran:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Anda dapat melihat output adalah format daftar. Tidak perlu mengulang range() dan menggunakan metode list() kita bisa langsung mengonversi output dari format range ke list.

Menggunakan karakter dalam rentang python()

Sejauh ini, kami telah menggunakan bilangan bulat di python range(). Kami juga telah melihat bahwa angka floating-point tidak didukung dalam rentang python. Mari kita coba dan lihat hasilnya seperti apa yang terjadi ketika kita menggunakan karakter.

Contoh:

for c in range ('z'):
        print(c, end =" ")

Keluaran:

Traceback (most recent call last):
  File "python_range.py", line 1, in <module>
    for c in range ('z'):
TypeError: 'str' object cannot be interpreted as an integer

Itu melempar kesalahan yang mengatakan string tidak dapat ditafsirkan sebagai bilangan bulat.

Untuk mendapatkan daftar alfabet Anda dapat menyesuaikan kode dan mendapatkan output yang diinginkan seperti yang ditunjukkan di bawah ini:

Contoh:

def get_alphabets(startletter, stopletter, step):
    for c in range(ord(startletter.lower()), ord(stopletter.lower()), step):
        yield chr(c)

print(list(get_alphabets("a", "h", 1)))

Keluaran:

['a', 'b', 'c', 'd', 'e', 'f', 'g']

Cara Mengakses Elemen Rentang

Anda dapat menggunakan for-loop untuk mendapatkan nilai dari rentang atau menggunakan indeks untuk mengakses elemen dari rentang().

Menggunakan for-loop

Contoh:

for i in range(6):
    print(i)

Keluaran:

0
1
2
3
4
5

Menggunakan indeks

Indeks digunakan dengan range untuk mendapatkan nilai yang tersedia pada posisi tersebut. Jika nilai rentang adalah 5, untuk mendapatkan nilai awal, Anda dapat menggunakan rentang(5)[0] dan rentang nilai berikutnya(5)[1] dan seterusnya.

Contoh:

startvalue = range(5)[0] 
print("The first element in range is = ", startvalue) 

secondvalue = range(5)[1] 
print("The second element in range is = ", secondvalue) 

lastvalue = range(5)[-1]
print("The first element in range is = ", lastvalue)

Keluaran:

startvalue = range(5)[0] 
print("The first element in range is = ", startvalue) 

secondvalue = range(5)[1] 
print("The second element in range is = ", secondvalue) 

lastvalue = range(5)[-1]
print("The first element in range is = ", lastvalue)

Menggunakan daftar()

Metode ini akan mencetak semua elemen dari range(). Menggunakan list() itu akan mengembalikan elemen dari range() dalam format daftar.

Contoh:

print(list(range(10)))

Keluaran:

 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Ini memberikan output daftar untuk rentang yang diberikan.

Contoh:Dapatkan bilangan genap menggunakan range()

Menggunakan range() akan mendapatkan daftar angka genap dalam kisaran yang diberikan sebagai input. Parameter range() adalah, start adalah 2, stop adalah 20, dan step adalah 2, sehingga nilainya akan bertambah 2 dan akan memberikan angka genap hingga stop-2.

Contoh:

for i in range(2, 20, 2):
    print(i, end =" ")

Keluaran:

2 4 6 8 10 12 14 16 18

Menggabungkan output dua rentang()

Dalam contoh ini akan menggabungkan 2 fungsi range() dengan bantuan fungsi rantai modul itertools().

Contoh:

from itertools import chain 

print("Merging two range into one") 
frange =chain(range(10), range(10, 20, 1))
for i in frange: 
    print(i, end=" ")

Keluaran:

Merging two range into one
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Menggunakan range() Dengan NumPy

Modul NumPy memiliki fungsi arange() yang berfungsi dan memberikan output serupa seperti range(). Arrange() mengambil parameter yang sama seperti range().

Sintaks:

arange(start, stop, step)

Untuk bekerja dengan NumPy ikuti langkah-langkah yang diberikan di bawah ini.

Langkah 1 :Impor modul NumPy

import numpy

Memetikan saat eksekusi, itu memberikan kesalahan yang mengatakan modul numpy tidak ditemukan, Anda perlu menginstal modul seperti yang ditunjukkan pada langkah 2.

Langkah 2 :Instal NumPy

pip install numpy

Langkah 3 :Contoh Kerja arange() menggunakan NumPy

import numpy as np 

for  i in np.arange(10):
   print(i, end =" ")        

Keluaran:

0 1 2 3 4 5 6 7 8 9

Angka floating point menggunakan NumPy arange()

Tidak mungkin mendapatkan urutan floating point menggunakan range(), tetapi dimungkinkan menggunakan NumPy arange().

Contoh:

Rentang yang kita inginkan adalah dari 0,5 hingga 1,5. Nilai akan bertambah sebesar 0,2.

import numpy as np 

for  i in np.arange(0.5, 1.5, 0.2):
   print(i, end =" ")        

Keluaran:

0.5 0.7 0.8999999999999999 1.0999999999999999 1.2999999999999998

Output yang kami dapatkan sedikit aneh, beberapa angka float ditampilkan dengan 16 tempat desimal. Hal ini terjadi karena rumitnya penyimpanan bilangan desimal mengambang ke dalam format biner. Anda juga dapat membulatkan nilai jika diperlukan dan membatasinya ke tempat desimal yang Anda butuhkan.

Ringkasan:


Python

  1. Argumen Fungsi Python
  2. Fungsi Python Anonim/Lambda
  3. Generator Python
  4. Fungsi Python Lambda dengan CONTOH
  5. Python abs() Fungsi:Contoh Nilai Absolut
  6. Python round() fungsi dengan CONTOH
  7. Python range() Fungsi:Float, List, For loop Contoh
  8. Python map() berfungsi dengan CONTOH
  9. Enumerate() Fungsi dalam Python:Loop, Tuple, String (Contoh)
  10. Daftar Python count() dengan CONTOH