Giới thiệu về Thư viện random trong Python
Thư viện random
trong Python là một công cụ mạnh mẽ, cung cấp các hàm đa dạng cho việc tạo ra số ngẫu nhiên và lựa chọn ngẫu nhiên từ các chuỗi hoặc danh sách. Thư viện này rất cần thiết trong các ứng dụng liên quan đến xác suất, mô phỏng, và thử nghiệm. Trong bài viết này, chúng ta sẽ đi sâu vào cách sử dụng các hàm cơ bản trong thư viện này.
Cách sử dụng hàm random
1. Import Thư viện random
Trước tiên, để sử dụng bất kỳ hàm nào trong thư viện random
, bạn cần import thư viện này vào mã nguồn của mình:
python
import random
2. Hàm random()
Hàm random()
trả về một số thực ngẫu nhiên trong khoảng [0.0, 1.0). Ví dụ:
python
print(random.random())
3. Hàm randint(a, b)
Hàm randint(a, b)
trả về một số nguyên ngẫu nhiên N sao cho a <= N <= b
.
python
print(random.randint(1, 10))
4. Hàm uniform(a, b)
Hàm uniform(a, b)
trả về một số thực ngẫu nhiên N sao cho a <= N <= b
.
python
print(random.uniform(1.0, 10.0))
5. Hàm randrange(start, stop[, step])
Hàm randrange(start, stop[, step])
cho phép bạn nhận một số nguyên ngẫu nhiên từ một dãy số có bước nhảy nhất định.
python
print(random.randrange(1, 10, 2)) # Các số lẻ từ 1 đến 9
6. Hàm choice(seq)
Hàm choice(seq)
trả về một phần tử ngẫu nhiên từ chuỗi seq
, có thể là danh sách, tuple, hoặc chuỗi ký tự.
python
choices = ['apple', 'banana', 'cherry']
print(random.choice(choices))
7. Hàm shuffle(x)
Hàm shuffle(x)
thực hiện việc xáo trộn ngẫu nhiên các phần tử trong danh sách x
.
python
numbers = [1, 2, 3, 4, 5]
random.shuffle(numbers)
print(numbers)
8. Hàm sample(population, k)
Hàm sample(population, k)
trả về một danh sách gồm k
phần tử được chọn ngẫu nhiên từ population
, mà không có sự trùng lặp.
python
numbers = [1, 2, 3, 4, 5]
print(random.sample(numbers, 3))
Cách thức hoạt động của hàm random
Các hàm trong thư viện random
sử dụng thuật toán ngẫu nhiên giả (pseudo-random algorithms), phổ biến nhất là thuật toán Mersenne Twister. Thuật toán này tạo ra các số ngẫu nhiên giả với chất lượng cao và độ lặp lại đảm bảo khi cung cấp cùng một giá trị khởi tạo (seed).
Ví dụ về sử dụng Seed
python
random.seed(42)
print(random.random())
print(random.random())
random.seed(42)
print(random.random())
print(random.random())
Kết quả khi sử dụng cùng một seed sẽ cho ra cùng một chuỗi số ngẫu nhiên, rất hữu ích cho việc kiểm tra và tái tạo kết quả trong các thí nghiệm.
Kết luận
Thư viện random
trong Python mang lại nhiều công cụ mạnh mẽ giúp bạn làm việc với số ngẫu nhiên và ngẫu nhiên hóa các phần tử trong danh sách. Các hàm dễ sử dụng này có thể được áp dụng trong nhiều lĩnh vực như xác suất, thống kê, trò chơi và mô phỏng. Việc hiểu rõ cách thức hoạt động của các hàm này cho phép bạn khai thác tối đa tiềm năng của Python trong các dự án của mình.
source: viblo