Làm cách nào để tạo số ngẫu nhiên trong Python mà không sử dụng ngẫu nhiên?
Trình tạo số ngẫu nhiên dựa trên thời gian sẽ chỉ hoạt động nếu được gọi một lần hoặc sử dụng thời gian ngẫu nhiên giữa một sự kiện đầu vào của người dùng Show thời gian chức năng. time() chỉ cập nhật 18. 2 lần mỗi giây, quá chậm nếu bạn yêu cầu nhanh một vài số ngẫu nhiên Được trả lời bởi GreenDay2001 59 trong một
Được trả lời bởi GreenDay2001 59 trong một
Đã trả lời bởi ov3rcl0ck 25 trong một
Tất cả 17 câu trả lờiGreenDay2001 13 năm trước
Vâng, có một số thuật toán để tạo số ngẫu nhiên, đơn giản nhất theo hiểu biết của tôi là Trình tạo đồng dư tuyến tính (LCG) Công thức chung của LCG là X_{n+1} = \left( a X_n + c \right)~~\bmod~~m. Giá trị được đề xuất cho a, m, c được đưa ra trong trang Wikipedia. Nên sử dụng các kết hợp a, m, c để có tính ngẫu nhiên hơn. Bắt đầu với bất kỳ giá trị nào của X và đối với các số ngẫu nhiên khác nhau mỗi khi bạn chạy mã, hãy chọn X theo thời gian hệ thống Để lấy số trong phạm vi cụ thể, ví dụ: [L, H) áp dụng điều này cho mọi số ngẫu nhiên được tạo (giả sử Y). 0 0 Chia sẻ Đã chỉnh sửa 13 năm trước bởi GreenDay2001 bởi vì. không có vegaseat 1.735 Kẻ đạo đức giả của DaniWeb Đồng nghiệp trong nhóm 13 năm trướcTrình tạo số ngẫu nhiên dựa trên thời gian sẽ chỉ hoạt động nếu được gọi một lần hoặc sử dụng thời gian ngẫu nhiên giữa một sự kiện đầu vào của người dùng thời gian chức năng. time() chỉ cập nhật 18. 2 lần mỗi giây, quá chậm nếu bạn yêu cầu nhanh một vài số ngẫu nhiên 0 0 Chia sẻ Đã chỉnh sửa 13 năm trước bởi vegaseat vì. không có sanchitgarg 0 Áp phích dành cho người mới 13 năm trước
vâng tôi đang đối mặt với nhiều vấn đề khi sử dụng thời gian. nó cũng tạo ra một chuỗi các từ không theo thứ tự tăng dần tôi đã viết mã cho số từ 1 đến 100. đây rồi nhập ngày giờ n=int(raw_input("Nhập số. của các số được tạo ra")) cho tôi trong phạm vi (n) l. nối thêm (t) in tôi cho tôi trong (l) in tym tại sao tôi lại yêu cầu một số logic khác không có phạm vi giới hạn 0 0 Chia sẻ sanchitgarg 0 Áp phích dành cho người mới 13 năm trước
Tôi đã thử sử dụng công thức này. Nó hoạt động tốt đối với số nhỏ (không chính xác nhỏ nhưng lên tới 1000000000) Sau đó, nó bắt đầu đưa ra L ở cuối số không. Làm cách nào để tăng phạm vi của nó? 0 0 Chia sẻ GreenDay2001 13 năm trướcÝ bạn là loại đầu ra của Chà, điều này xảy ra khi số lớn hơn phạm vi loại số nguyên thông thường. Python chuyển đổi số nguyên bình thường thành loại Dài và Python hiển thị L sau các loại dài. Khi bạn làm _______________ , L không xuất hiện 0 0 Chia sẻ Đã chỉnh sửa 13 năm trước bởi GreenDay2001 bởi vì. không có sanchitgarg 0 Áp phích dành cho người mới 13 năm trước
in num nghĩa là gì? . Tôi muốn in một danh sách các số 0 0 Chia sẻ GreenDay2001 13 năm trướcÝ tôi là thay vì in trực tiếp toàn bộ danh sách, bạn phải in các số riêng lẻ, để tránh L ở cuối
0 0 Chia sẻ sanchitgarg 0 Áp phích dành cho người mới 13 năm trướcCó phương pháp hay logic nào khác ngoài công thức đó không? 0 0 Chia sẻ ov3rcl0ck 25 Áp phích trẻ 13 năm trước
Có lẽ đầu vào tốt nhất là ngày/giờ, bộ nhớ đã sử dụng, đầu vào người dùng ngẫu nhiên và chuyển động chuột yêu thích của tôi (truecrypt sử dụng cái này) 0 0 Chia sẻ sanchitgarg 0 Áp phích dành cho người mới 13 năm trước
Ngay bây giờ tôi đã sử dụng thời gian cho đầu vào của mình. Bạn có thể vui lòng cung cấp thêm một chút thông tin về bộ nhớ đã sử dụng và chuyển động của chuột không? 0 0 Chia sẻ GreenDay2001 13 năm trước
Tất nhiên có những người khác ngoài kia. Nhưng cái này là bộ đơn giản nhất và sản xuất tốt. Bạn có thể tìm kiếm các thuật toán tạo số giả ngẫu nhiên http. // vi. wikipedia. org/wiki/List_of_algorithms >> Có lẽ đầu vào tốt nhất là ngày/giờ, bộ nhớ đã sử dụng, đầu vào người dùng ngẫu nhiên và chuyển động chuột yêu thích của tôi (truecrypt sử dụng cái này) Tất cả những điều này sẽ giúp bạn gieo hạt. nhưng để tạo các tập hợp, bạn cần một số phương pháp 0 0 Chia sẻ sanchitgarg 0 Áp phích dành cho người mới 13 năm trước
Tôi đã tìm kiếm trên wikipedia và thấy nhiều thuật toán khác. Phần còn lại quá phức tạp Ý nghĩa của hạt giống là gì? n bộ đề cập đến danh sách các số ngẫu nhiên? 0 0 Chia sẻ vegaseat 1.735 Kẻ đạo đức giả của DaniWeb Đồng nghiệp trong nhóm 13 năm trướcMã Python này chỉ cho bạn cách chọn một số ngẫu nhiên từ danh sách
Danh sách được tạo theo cách này
Tôi đã tạo rand_list tương đối ngắn cho ví dụ này, thông thường bạn có thể muốn kéo dài >1000 0 0 Chia sẻ Đã chỉnh sửa 13 năm trước bởi vegaseat vì. không có ov3rcl0ck 25 Áp phích trẻ 13 năm trước
Tìm nạp mức sử dụng bộ nhớ và đầu vào chuột phụ thuộc vào hệ điều hành. Không có thư viện để tìm nạp mức sử dụng bộ nhớ, nhưng bạn có thể sử dụng lệnh "mem" trên windows để tìm nạp và lệnh "ps" hoặc "free" trên UNIX để tìm nạp, nhưng hãy nhớ rằng bạn có thể cần . Đối với đầu vào chuột, bạn có thể sử dụng pyHook cho windows và xlib cho UNIX (OS X hỗ trợ X11 và mọi bản phân phối Unix đáng sử dụng đều hỗ trợ nó) Làm cách nào để lấy số ngẫu nhiên trong Python mà không có mô-đun ngẫu nhiên?Tạo số nguyên ngẫu nhiên trong Python
. a= là mức thấp nhất của phạm vi, có thể được chọn. b= là mức cao nhất của phạm vi, cũng có thể được chọn. use the randint() function, which accepts two parameters: a= is the low end of the range, which can be selected. b= is the high end of the range, which can also be selected.
Tôi có thể sử dụng cái gì thay vì ngẫu nhiên trong Python?Sử dụng mô-đun "bí mật" - Đây là mô-đun tích hợp sẵn. bí mật nhập khẩu bí mật. ngẫu nhiên (10) NÓ TẠO MỘT SỐ TRONG GIỮA 0 ĐẾN 10 HOẶC GIÁ TRỊ CỦA BẠN.
Có cách nào trong Python để tạo số ngẫu nhiên không?Để tạo số ngẫu nhiên trong Python, hàm randint() được sử dụng . Chức năng này được xác định trong mô-đun ngẫu nhiên.
Làm cách nào để tạo số ngẫu nhiên bằng Python trong phạm vi mà không cần lặp lại?nhập numpy dưới dạng np; . ngẫu nhiên. hoán vị (100) [. 10] cũng tạo ra 10 số được chọn từ 0 đến 99, không trùng lặp |