- vừa được xem lúc

Các hàm random trong python

0 0 9

Người đăng: Nguyễn Ánh Dung

Theo Viblo Asia

Giới thiệu về Thư viện random trong Python

Thư viện random trong Python cung cấp một loạt các hàm để tạo ra các số ngẫu nhiên, cũng như các lựa chọn ngẫu nhiên từ các chuỗi hoặc danh sách. Đây là một trong những thư viện cơ bản và hữu ích nhất trong Python, đặc biệt khi cần thực hiện các thao tác liên quan đến xác suất, mô phỏng và thử nghiệm.

Cách Sử Dụng Hàm random

1. Import Thư Viện random

Để sử dụng các hàm trong thư viện random, đầu tiên bạn cần import nó:

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).

import random 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.

import random 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.

import random print(random.uniform(1.0, 10.0))

5. Hàm randrange(start, stop[, step])

Hàm randrange(start, stop[, step]) trả về một số nguyên ngẫu nhiên từ dãy số range(start, stop, step).

import random print(random.randrange(1, 10, 2)) # 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, hay chuỗi ký tự).

import random choices = ['apple', 'banana', 'cherry']
print(random.choice(choices))

7. Hàm shuffle(x) Hàm shuffle(x) xáo trộn ngẫu nhiên các phần tử trong danh sách x.

import random 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, không trùng lặp.

import random numbers = [1, 2, 3, 4, 5]
print(random.sample(numbers, 3))

Cách random Thực Hiện

Các hàm trong thư viện random sử dụng các thuật toán ngẫu nhiên giả (pseudo-random algorithms), cụ thể là thuật toán Mersenne Twister. Đây là một trong những thuật toán tạo số ngẫu nhiên giả phổ biến và được sử dụng rộng rãi do khả năng sinh các số ngẫu nhiên có chất lượng cao.

Thuật toán Mersenne Twister tạo ra các số ngẫu nhiên dựa trên một giá trị khởi tạo gọi là seed. Nếu bạn sử dụng cùng một seed, bạn sẽ nhận được cùng một chuỗi số ngẫu nhiên. Điều này có thể hữu ích trong việc kiểm tra và tái tạo các kết quả thí nghiệm.

Ví dụ về sử dụng Seed

import random random.seed(42)
print(random.random())
print(random.random()) random.seed(42)
print(random.random())
print(random.random())

Trong ví dụ trên, các giá trị ngẫu nhiên được tạo ra giống nhau khi sử dụng cùng một seed.

Kết Luận

Thư viện random trong Python cung cấp nhiều công cụ mạnh mẽ để 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 của nó rất dễ sử dụng và có thể ứng dụng trong nhiều lĩnh vực khác nhau như xác suất, thống kê, trò chơi, và mô phỏng. Hiểu cách các hàm này hoạt động sẽ giúp bạn tận dụng tốt hơn các tính năng của Python trong các dự án của mình.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Thao tác với File trong Python

Python cung cấp các chức năng cơ bản và phương thức cần thiết để thao tác các file. Bài viết này tôi xin giới thiệu những thao tác cơ bản nhất với file trong Python.

0 0 56

- vừa được xem lúc

Tập tành crawl dữ liệu với Scrapy Framework

Lời mở đầu. Chào mọi người, mấy hôm nay mình có tìm hiểu được 1 chút về Scrapy nên muốn viết vài dòng để xem mình đã học được những gì và làm 1 demo nho nhỏ.

0 0 159

- vừa được xem lúc

Sử dụng Misoca API (oauth2) với Python

Với bài viết này giúp chúng ta có thể nắm được. ・Tìm hiểu cách xử lý API misoca bằng Python.

0 0 43

- vừa được xem lúc

[Series Pandas DataFrame] Phân tích dữ liệu cùng Pandas (Phần 3)

Tiếp tục phần 2 của series Pandas DataFrame nào. Let's go!!. Ở phần trước, các bạn đã biết được cách lấy dữ liệu một row hoặc column trong Pandas DataFame rồi phải không nào. 6 Hoc.

0 0 56

- vừa được xem lúc

Lập trình socket bằng Python

Socket là gì. Một chức năng khác của socket là giúp các tầng TCP hoặc TCP Layer định danh ứng dụng mà dữ liệu sẽ được gửi tới thông qua sự ràng buộc với một cổng port (thể hiện là một con số cụ thể), từ đó tiến hành kết nối giữa client và server.

0 0 70

- vừa được xem lúc

[Series Pandas DataFrame] Phân tích dữ liệu cùng Pandas (Phần 2)

Nào, chúng ta cùng đến với phần 2 của series Pandas DataFrame. Truy xuất Labels và Data. Bạn đã biết cách khởi tạo 1 DataFrame của mình, và giờ bạn có thể truy xuất thông tin từ đó. Với Pandas, bạn có thể thực hiện các thao tác sau:.

0 0 88