Wie erstelle ich ein zufälliges Passwort in Python?

coldplay.xixi
Freigeben: 2020-06-19 15:51:53
Original
21984 Leute haben es durchsucht

Wie erstelle ich ein zufälliges Passwort in Python?

Wie generiert Python zufällige Passwörter?

So generieren Sie zufällige Passwörter in Python:

1. Zufällige Passwortgenerierung. Schreiben Sie ein Programm, um aus einer Liste mit 26 Groß- und Kleinbuchstaben und 9 Zahlen zufällig 10 8-stellige Passwörter zu generieren.

    import random
    def random_password():
        list1 = []
        #把字母加入序列中
        for i in range(65,90):
            list1.append(chr(i))
        for i in range(97,122):
            list1.append(chr(i))
            
        list2 = [1,2,3,4,5,6,7,8,9]
        list = list1 +list2
        n = 0
        while n < 10:
            password = []
            n = n + 1
            m = 0
            password = password + random.sample(list, 8)
            #把列表转化为字符串
            password_middle = [str(i) for i in password]
            password_end = &#39;&#39;.join(password_middle)
            
            print("第{}个随机生成的密码是:{}".format(n,password_end))
        
random_password()
#random.sample(seq, k)实现从序列或集合seq中随机选取k个独立的的元素
#random.randint(a, b)   #A-Z:65-90;a-z:97-122;ASCII码48~57为0到9十个阿拉伯数字
Nach dem Login kopieren

2. Python generiert zufällige Passwörter: Zufallsbibliothek

Anforderungen:

(1) Verwenden Sie die Zufallsbibliothek und verwenden Sie 0x1010 als Zufallsstartwert.

(2) Das Passwort besteht aus 26 Groß- und Kleinbuchstaben, 10 Ziffern und! @#¥%……&* und weitere 8 Zeichen.

(3) Die Länge jedes Passworts ist auf 10 Zeichen festgelegt.

(4) Jedes Mal, wenn das Programm ausgeführt wird, gibt es 20 Passwörter, eine Zeile für jedes Passwort.

(5) Die 20 Passwörter für jede Langlebigkeit werden in der Datei „random password.txt“ gespeichert

import random
random.seed(0x1010)  #设置随机种子数
    #设置种子选择空间
s = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*"
ls = [] #存取密码的列表
FirstPsw = "" #存取第一个密码的字符
 
while len(ls)<20:  #十个随机密码
    pwd = ""
    for i in range(10):
        pwd += s[random.randint(0,len(s)-1)]
    if pwd[0] in FirstPsw:
        continue
    else:
        ls.append(pwd)
        FirstPsw +=pwd[0]
fo = open("随机密码.txt","w",encoding ="utf-8")
fo.write("\n".join(ls))
fo.close()
Nach dem Login kopieren

3. Python generiert eine 8-stellige Zeichenfolge, die Zahlen sowie Groß- und Kleinbuchstaben enthalten muss Buchstaben (Passwort)

#-*-coding:utf_8-*-
import random,string    #调用random、string模块
src_digits = string.digits              #string_数字
src_uppercase = string.ascii_uppercase  #string_大写字母
src_lowercase = string.ascii_lowercase  #string_小写字母
count = int(input("请输入生成密码个数:"))
for i in range(count):
    #随机生成数字、大写字母、小写字母的组成个数(可根据实际需要进行更改)
    digits_num = random.randint(1,6)
    uppercase_num = random.randint(1,8-digits_num-1)
    lowercase_num = 8 - (digits_num + uppercase_num)
    #生成字符串
    password = random.sample(src_digits,digits_num) + random.sample(src_uppercase,uppercase_num) + random.sample(src_lowercase,lowercase_num)
    #打乱字符串
    random.shuffle(password)
    #列表转字符串
    new_password = &#39;&#39;.join(password)
    print(new_password)
Nach dem Login kopieren

Empfohlenes Tutorial: „Python-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWie erstelle ich ein zufälliges Passwort in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!