Daftar Referensi Python
random.seed() menginisialisasi generator bilangan acak. Seed yang sama dapat menghasilkan urutan pseudoacak yang sama sehingga berguna untuk pengujian dan contoh yang dapat diulang.
Sintaks
random.seed(a=None, version=2)
Parameter
| Parameter | Wajib? | Keterangan |
|---|---|---|
a |
Tidak | Seed berupa None, int, float, string, bytes, atau bytearray |
version |
Tidak | Algoritma seed untuk string/bytes; default 2. Versi 1 hanya untuk urutan Python lama |
Nilai balik: None.
Contoh
import random
random.seed(42)
print(random.randint(1, 100))
random.seed(42)
print(random.randint(1, 100))
Output:
82
82
Contoh Lainnya
String dapat menjadi seed
import random
random.seed("python")
print(round(random.random(), 6))
Output:
0.839794
Membuat generator terpisah
import random
generator_a = random.Random(7)
generator_b = random.Random(7)
print(generator_a.randint(1, 10))
print(generator_b.randint(1, 10))
Output:
6
6
Mengulang satu rangkaian hasil
import random
random.seed(10)
pertama = [random.randint(1, 9) for _ in range(3)]
random.seed(10)
kedua = [random.randint(1, 9) for _ in range(3)]
print(pertama)
print(pertama == kedua)
Output:
[1, 7, 8]
True
Kesalahan Umum
seed()tidak membuat generator aman untuk password atau token; gunakan modulsecrets.- Memanggil
seed()sebelum setiap pilihan akan mengulang pola dan mengurangi keacakan. - Sejak Python 3.11, tipe seed dibatasi pada
None, int, float, string, bytes, atau bytearray. - Tanpa argumen, Python memakai sumber keacakan sistem bila tersedia; hasilnya tidak dimaksudkan untuk diulang.
Pelajari Lebih Lanjut
- Referensi: Modul random · random.random() · random.randint()
- Buku Belajar Python untuk Pemula: Bab 16 dan proyek game di Bab 20
