Bilangan Acak (Random)
Table of Contents
Menggunakan Operasi Matematika Pada Python - This article is part of a series.
Pada materi ini, kita akan belajar tentang penggunaan modul random dalam Python untuk menghasilkan bilangan acak. Bilangan acak sering digunakan dalam pengembangan game, simulasi, atau uji coba algoritma.
A. Membangkitkan (Generate) Bilangan Acak #
Modul random menyediakan beberapa fungsi untuk menghasilkan bilangan acak. Berikut adalah beberapa di antaranya:
random()
: Menghasilkan bilangan acak antara0.0
dan1.0
.
Perhatikan contoh berikut:
import random
bilangan_acak = random.random()
print("Bilangan acak antara 0.0 dan 1.0:", bilangan_acak)
Hasilnya adalah
Bilangan acak antara 0.0 dan 1.0: 0.0123456789
randint(a, b)
: Menghasilkan bilangan acak antaraa
danb
, termasuk kedua nilai tersebut.
Perhatikan contoh berikut:
bilangan_bulat_acak = random.randint(1, 10)
print("Bilangan bulat acak antara 1 dan 10:", bilangan_bulat_acak)
Hasilnya adalah
Bilangan bulat acak antara 1 dan 10: 7
uniform(a, b)
: Menghasilkan bilangan acak dengan distribusi seragam antaraa
danb
.
Perhatikan contoh berikut:
bilangan_desimal_acak = random.uniform(5.0, 10.0)
print("Bilangan desimal acak antara 5.0 dan 10.0:", bilangan_desimal_acak)
Hasilnya adalah
Bilangan desimal acak antara 5.0 dan 10.0: 8.432165746
B. Memilih dari Sebuah List #
Fungsi choice()
dapat digunakan untuk memilih secara acak dari sebuah list. Perhatikan contoh berikut:
pilihan_list = ["apel", "jeruk", "mangga", "pisang"]
buah_terpilih = random.choice(pilihan_list)
print("Buah terpilih secara acak:", buah_terpilih)
Hasilnya adalah
Buah terpilih secara acak: jeruk
C. Mengacak Urutan List #
Untuk mengacak urutan elemen dalam sebuah list, gunakan fungsi shuffle()
. Perhatikan contoh berikut:
urutan_awal = [1, 2, 3, 4, 5]
random.shuffle(urutan_awal)
print("Urutan setelah diacak:", urutan_awal)
Hasilnya adalah
Urutan setelah diacak: [3, 1, 4, 5, 2]
D. Seed pada Bilangan Acak #
Untuk menghasilkan hasil yang dapat direproduksi (dengan kata lain, hasil yang sama setiap kali kode dijalankan), kita dapat menggunakan fungsi seed()
. Perhatikan contoh berikut:
random.seed(42) # Angka apa pun dapat digunakan sebagai seed
bilangan_acak = random.random()
print("Bilangan acak dengan seed tertentu:", bilangan_acak)
Hasilnya adalah
Bilangan acak dengan seed tertentu: 0.6394267984578837
E. Distribusi Normal (Gaussian) #
Fungsi gauss(mu, sigma)
menghasilkan bilangan acak dengan distribusi normal (Gaussian) berdasarkan nilai rata-rata (mu
) dan deviasi standar (sigma
). Perhatikan contoh berikut:
bilangan_gaussian = random.gauss(0, 1) # Distribusi normal dengan mean 0 dan std dev 1
print("Bilangan Gaussian:", bilangan_gaussian)
Hasilnya adalah
Bilangan Gaussian: 1.0546349890920268
F. Mengambil Secara Acak dari Populasi Bilangan Tertentu #
Jika kamu ingin mengambil sampel acak dari populasi yang lebih besar, kamu dapat menggunakan fungsi sample()
.
populasi = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
sampel_acak = random.sample(populasi, 3) # Mengambil 3 elemen acak dari populasi
print("Sampel acak:", sampel_acak)
Hasilnya adalah
Sampel acak: [3, 6, 8]