Python 生成任意長度隨機密碼

2021-10-09 02:10:41 字數 3283 閱讀 8252

20210123新增

# 生成任意長度隨機字串  33:!    126:~  0:48  9:57  a:65   z:90  a:97  z:122

import random

my_list=

temp_list=

for i in

range(33

,127):

chr(i)

)random.shuffle(my_list)

pw_len=

input

("請輸入你想要的密碼長度"

)for i in

range

(int

(pw_len)):

)my_pw=

"".join(temp_list)

print

(my_pw)

#建立隨機密碼 (方法一)

defrandom_characters

(pass_len,my_class=

"a")

:'''

pass_len:代表生成隨機字元的長度

my_class:隨機字元的構成分類

a: 字母(大小寫)+數字+特殊符號

u:大寫字母

l:小寫字母

n:數字

'''import random

#建立字元庫

#48-57=【0-9】 65-90=【a-z】 97-122=【a-z】 特殊字元 【33-47】【58-64】【91-96】【123-126】

upper_letters=

lower_letters=

numbers=

all_characters=

#所有大寫字母

upper_letters=

[chr

(i)for i in

range(65

,91)]

#所有小寫字母

lower_letters=

[chr

(i)for i in

range(97

,123)]

#所有字母

letters=upper_letters+lower_letters

#所有數字

numbers=

[chr

(i)for i in

range(48

,58)]

#所有字母、數字、特殊字元

all_characters=

[chr

(i)for i in

range(33

,126)]

source_code=letters if my_class.lower()==

"pl"

else upper_letters if my_class.lower()==

"u"else lower_letters if my_class.lower()==

"l"else numbers if my_class.lower()==

'n'else all_characters

my_code=

my_pass_len=pass_len

for _ in

range

(my_pass_len)

: temp_code=source_code[random.randint(0,

len(source_code)-1

)]# print(temp_code)

# print(my_code)

my_char=

"".join(my_code)

return my_char

print

("生成密碼為:"

,random_characters(8,

"pl"

))

生成密碼為: bgoxvqhd

#建立隨機密碼 (方法二)

defrandom_characters

(pass_len,my_class=

"a")

:'''

pass_len:代表生成隨機字元的長度

my_class:隨機字元的構成分類

a: 字母(大小寫)+數字+特殊符號

u:大寫字母

l:小寫字母

n:數字

'''import random

#建立字元庫

#48-57=【0-9】 65-90=【a-z】 97-122=【a-z】 特殊字元 【33-47】【58-64】【91-96】【123-126】

upper_letters=

lower_letters=

numbers=

all_characters=

#所有大寫字母

upper_letters=

[chr

(i)for i in

range(65

,91)]

#所有小寫字母

lower_letters=

[chr

(i)for i in

range(97

,123)]

#所有字母

letters=upper_letters+lower_letters

#所有數字

numbers=

[chr

(i)for i in

range(48

,58)]

#所有字母、數字、特殊字元

all_characters=

[chr

(i)for i in

range(33

,126)]

source_code=letters if my_class.lower()==

"pl"

else upper_letters if my_class.lower()==

"u"else lower_letters if my_class.lower()==

"l"else numbers if my_class.lower()==

'n'else all_characters

my_pass_len=pass_len

my_char=

"".join(random.sample(source_code,my_pass_len)

)return my_char

print

("生成密碼為:"

,random_characters(8)

)

生成密碼為: wplio;]v

python生成隨機密碼

建立randpass.py指令碼,要求如下 編寫乙個能生成8位隨機密碼的程式 使用random的choice函式隨機取出字元 改進程式,使用者可以自己決定生成多少位的密碼 匯入random模組,通過random靜態物件呼叫choice 方法,從自定義字串all chs中獲取隨機項,將獲取到的隨機字元...

Python 隨機密碼生成

第一步 匯入 random 和 string 庫 匯入 random 和 string 庫 import random import string 第二步 設定變數 a 與變數 key 設定變數 a 與變數 key a string.ascii letters string.digits key 第...

隨機密碼生成(Python程式設計)

一 問題描述。編寫程式。在26個字母大小寫和9個數字組成的列表中隨機生成10個8位密碼。二 問題分析。因為要在列表中隨機生成密碼,故需要將26個大 小寫字母和9個數字存放在同乙個列表中。首先使用string模組中的ascii letters和digits方法來引入大 小寫字母與0 9的數字,然後用l...