random.seed(a, version)
trong python được sử dụng để khởi tạo trình tạo số giả ngẫu nhiên (PRNG) .
PRNG là thuật toán tạo ra chuỗi số xấp xỉ các thuộc tính của số ngẫu nhiên. Những số ngẫu nhiên này có thể được sao chép bằng cách sử dụng giá trị hạt giống . Vì vậy, nếu bạn cung cấp giá trị hạt giống, PRNG bắt đầu từ trạng thái bắt đầu tùy ý bằng cách sử dụng hạt giống.
Đối số a
là giá trị hạt giống. Nếu một giá trị là None
, theo mặc định, thời gian hệ thống hiện tại được sử dụng.
và version
là một số nguyên chỉ định cách chuyển đổi tham số thành số nguyên. Giá trị mặc định là 2.
import random
random.seed(9001)
random.randint(1, 10) #this gives output of 1
# 1
Nếu bạn muốn các số ngẫu nhiên tương tự để được sao chép sau đó cung cấp các hạt giống cùng một lần nữa
random.seed(9001)
random.randint(1, 10) # this will give the same output of 1
# 1
Nếu bạn không cung cấp hạt giống, thì nó sẽ tạo ra số lượng khác nhau chứ không phải 1 như trước đây
random.randint(1, 10) # this gives 7 without providing seed
# 7
Nếu bạn cung cấp hạt giống khác với trước đây , thì nó sẽ cung cấp cho bạn một số ngẫu nhiên khác nhau
random.seed(9002)
random.randint(1, 10) # this gives you 5 not 1
# 5
Vì vậy, tóm lại, nếu bạn muốn sao chép cùng một số ngẫu nhiên, hãy cung cấp hạt giống. Cụ thể, cùng một hạt giống .
random.seed
. Thông thường bạn chỉ cần gọirandom.seed()
và nó sử dụng thời gian hiện tại làm giá trị hạt giống, có nghĩa là bất cứ khi nào bạn chạy tập lệnh, bạn sẽ nhận được một chuỗi các giá trị khác nhau.