Bài đăng này đi qua cách tạo ra một từ hoặc chữ cái ngẫu nhiên trong Python. Cài đặt từ ngẫu nhiên và pyyaml:Cài đặt
pip3 install random-word pyyaml
Pyyaml là bắt buộc nếu không bạn sẽ gặp lỗi:
ModuleNotFoundError: No module named 'yaml'
Cách sử dụng
Tạo một từ ngẫu nhiên:
from random_word import RandomWords
random_words = RandomWords[]
print[random_words.get_random_word[]]
Xem tài liệu gói để biết thêm thông tin.
Thử nghiệm
Replit:
Thư ngẫu nhiên
Nhận một chữ cái ngẫu nhiên từ bảng chữ cái:
from string import ascii_lowercase
from random import randrange
print[ascii_lowercase[randrange[len[ascii_lowercase]]]]
Thử nghiệm
Replit:
Thư ngẫu nhiên
1
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Tôi đang tìm cách tạo một danh sách từ ngẫu nhiên từ một tập hợp các ký tự trong Python. Vấn đề ở đây:-
Nó đang tạo ra như:- aaaaaa aaaaab aaaaac ...... vậy
Tôi muốn thêm chức năng ngẫu nhiên để nó tạo ra độ dài tương tự với ngẫu nhiên các bảng chữ cái mà nó có như:- A15Bef F45ACD 9BBAC0 ...... vì vậy
Nhìn với cùng chiều dài nhưng ngẫu nhiên.
Làm thế nào để thêm chức năng ngẫu nhiên vào nó?
#Code
import itertools
chrs = 'abcdef0123456789' # Change your required characters here
n = 6 # Change your word length here
for xs in itertools.product[chrs, repeat=n]:
print[''.join[xs]]
Xin hãy giúp tôi giải quyết nó.
Dani Mesejo
58.7K6 Huy hiệu vàng46 Huy hiệu bạc68 Huy hiệu đồng6 gold badges46 silver badges68 bronze badges
Hỏi ngày 16 tháng 9 năm 2018 lúc 11:33Sep 16, 2018 at 11:33
3
ModuleNotFoundError: No module named 'yaml'
0 sẽ tạo ra tất cả các giá trị có thể. Thay vào đó, những gì bạn muốn là chọn ModuleNotFoundError: No module named 'yaml'
1 các ký tự ngẫu nhiên từ ModuleNotFoundError: No module named 'yaml'
2 và nối chúng:import random
chrs = 'abcdef0123456789' # Change your required characters here
n = 6 # Change your word length here
print[''.join[random.choices[chrs, k=5]]]
Đã trả lời ngày 16 tháng 9 năm 2018 lúc 11:50Sep 16, 2018 at 11:50
Maxime Chéramymaxime ChéramyMaxime Chéramy
16.8k8 Huy hiệu vàng52 Huy hiệu bạc74 Huy hiệu đồng8 gold badges52 silver badges74 bronze badges
1
Bạn có thể làm điều đó bằng
ModuleNotFoundError: No module named 'yaml'
3:import random
chrs = 'abcdef0123456789'
n = 6
result = ''.join[random.choice[chrs] for _ in range[n]]
Đã trả lời ngày 16 tháng 9 năm 2018 lúc 11:39Sep 16, 2018 at 11:39
Peyman.HPeyman.HPeyman.H
1.8011 Huy hiệu vàng16 Huy hiệu bạc26 Huy hiệu đồng1 gold badge16 silver badges26 bronze badges
0
''.join[random.choice[‘abcdef0123456789’] for _ in range[N]]
Tùy chọn mật mã hơn ở đây, ví dụ dưới đây sẽ tạo chuỗi ngẫu nhiên bằng cách sử dụng tất cả các bảng chữ cái và chữ số dưới
''.join[random.SystemRandom[].choice[string.ascii_uppercase + string.digits] for _ in range[N]]
Đã trả lời ngày 16 tháng 9 năm 2018 lúc 11:41Sep 16, 2018 at 11:41
AlexalexAlex
1.3162 Huy hiệu vàng15 Huy hiệu bạc31 Huy hiệu đồng2 gold badges15 silver badges31 bronze badges
2
Tôi sử dụng một cái gì đó như thế này
import random
def generateAWord [length]:
i = 0
result = ""
while i < length:
letter = chr[33 + int[93 * random.random[]]]
result += letter
i +=1
return result
33 trong Bên trong chr là số thập phân ASCII đầu tiên mà bạn muốn [33 đại diện cho {!}]. ngẫu nhiên.random [] Trả về số điểm nổi ngẫu nhiên tiếp theo trong phạm vi [0,0, 1.0] do đó, thời gian 0,0 - 1,0 x 93, ví dụ 0.1732*93 sẽ kết quả 16.1076 [và nó đã chuyển nó thành int, vì vậy nó kết thúc là 16]. Vì vậy, 93 đại diện cho kết quả tối đa từ số thập phân ascii bắt đầu mà bạn muốn [trong trường hợp này là 33] cho đến số thập phân tối đa ASCII mà bạn muốn [trong trường hợp này là 33+93 là 126 là {~} trong số thập phân ASCII].
Sau đó, CHR sẽ chuyển đổi kết quả đó thành char.
Đã trả lời ngày 9 tháng 4 năm 2019 lúc 4:07Apr 9, 2019 at 4:07