নির্দিষ্ট রেঞ্জের মধ্যে র্যান্ডম ইন্টিজার জেনারেট করে লিস্ট বানানোর জন্য random.randrange() এবং লিস্ট কম্প্রিহেনশন ব্যবহার করা হয়।
উদাহরণ
import random
# ১ থেকে ৯৯ পর্যন্ত (১০০ বাদ), ১০টি র্যান্ডম নাম্বার
result = [random.randrange(1, 100, 1) for _ in range(10)]
print("র্যান্ডম লিস্ট:", result)
আউটপুট (উদাহরণ)
র্যান্ডম লিস্ট: [40, 73, 58, 45, 68, 19, 86, 6, 15, 71]
randrange প্যারামিটার
random.randrange(start, stop[, step])
# start: অন্তর্ভুক্ত
# stop: বাদ (exclusive)
# step: স্টেপ সাইজ (ডিফল্ট ১)
অন্যান্য র্যান্ডম ফাংশন
| ফাংশন | ব্যাখ্যা | উদাহরণ |
|---|---|---|
randint(a, b) | a থেকে b পর্যন্ত (দুইটোই অন্তর্ভুক্ত) | randint(1, 100) |
randrange(start, stop, step) | start থেকে stop-১ পর্যন্ত, step দিয়ে | randrange(0, 101, 2) → জোড় সংখ্যা |
choice(seq) | সিকোয়েন্স থেকে একটা র্যান্ডম পিক | choice([1,2,3]) |
sample(pop, k) | kটি ইউনিক এলিমেন্ট পিক (নন-রিপিটিং) | sample(range(100), 10) |
uniform(a, b) | ফ্লোটিং পয়েন্ট র্যান্ডম | uniform(0, 1) |
random() | ০.০ থেকে ১.০ পর্যন্ত ফ্লোট | random() |
Reproducibility (পুনরাবৃত্তি) জন্য Seed
random.seed(42) # ফিক্সড সিড
result = [random.randrange(1, 100) for _ in range(10)]
# প্রতিবার একই আউটপুট: [82, 15, 4, 95, 36, 32, 29, 18, 95, 41]
NumPy-এ র্যান্ডম (বড় অ্যারের জন্য দ্রুত)
import numpy as np
np.random.seed(42)
arr = np.random.randint(1, 100, size=10)
print(arr) # [52 93 15 72 61 20 83 68 88 5]