Python生成隨機密碼並寫入檔案

2021-10-04 07:58:46 字數 2211 閱讀 4755

利用python的stringrandom兩個庫,來生成一串由大小寫字母和!@#$%^&*八個特殊字元,還有數字隨機組合而成的隨機密碼。

所需要的函式有以下幾項:

random.sample(隨機獲取乙個片段)

string.ascii_letters(字母)與 string.digits(數字)

set.intersection(關於集合的操作)

with

python3 file

random.sample()的函式原型為:random.sample(sequence, k),從指定序列中隨機獲取指定長度的片斷。sample函式不會修改原有序列。

示例:

list =[1

,2,3

,4,5

,6,7

,8,9

,10] slice = random.

sample

(list,5)

print

(slice)

print

(list)

# filename : test.py

# author by : www.runoob.com

# 寫檔案

with

open

("test.txt"

,"wt"

)as out_file:

out_file.

write

("該文字會寫入到檔案中\n看到我了吧!"

)# read a file

with

open

("test.txt"

,"rt"

)as in_file:

text = in_file.

read()

print

(text)

輸出效果:

#儲存符合要求的密碼

special_str =

'!@#$%^&*'

count =

input

('請確認要生成幾條密碼: '

)i =

0 #記錄符合要求的密碼個數

while i <

int(count)

: passwd =

set(random.

sample

(string.ascii_letters + string.digits + special_str,10)

) #從字母和數字中隨機抽取10位生成密碼

if passwd.

intersection

(string.ascii_uppercase) and passwd.

intersection

(string.ascii_lowercase) and passwd.

intersection

(string.digits) and passwd.

intersection

(special_str)

: #判斷密碼中是否包含大小寫字母和數字

passwds.(''

.join

(passwd)

) #將集合轉化為字串

with

open

("隨機密碼.txt"

,"a+"

)as out_file: #寫入檔案

out_file.

write(''

.join

(passwd)

+"\n"

)

i +=

1 #每生成1個符合要求的密碼,i加1

print

(passwds)

txt檔案存放位置就是py指令碼所在的位置。

效果自己執行看看啦~

生成方法還有好多種,這裡只寫了最容易理解的一種

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

生成隨機密碼

編寫乙個函式,用於生成隨機密碼,入參為隨機密碼的長度,出參為生成的隨機密碼,要求生成的隨機密碼必須同時包含大寫字母小寫字母數字。生成隨機碼,引數為隨機碼長度,同時包含大小寫字母和數字 public string getrandomnum int length listlist new arrayli...