[PYTHON] Ich mache ein Passwort!

gen-pass.py


# Python3 fileencoding: utf-8

from argparse import ArgumentParser
from os import urandom
from string import printable, ascii_letters, digits


def option_parse():
    parser = ArgumentParser()
    parser.add_argument("length", type=int, nargs="?", default=12)
    parser.add_argument(
        "-c", "--charset", choices="na",
        help="a = alphabets, n = a + nums, default is printables."
    )
    return parser.parse_args()


def generate(charset, passlen):
    chars = printable[:-5]
    if charset == "a":
        chars = ascii_letters
    elif charset == "n":
        chars = digits + ascii_letters
    password = ""
    while len(password) < passlen:
        s = urandom(1)[0]
        # if Python2.x
        # s = ord(urandom(1)[0])
        if s < len(chars):
            password += chars[s]
    return password


if __name__ == "__main__":
    options = option_parse()
    charset = options.charset
    length = options.length
    print(generate(charset, length))

Sie können Hilfe mit -h bekommen. Geben Sie die Länge mit -l an und geben Sie den Zeichensatz an, der mit -c verwendet werden soll.

$ python3 gen-pass.py -h
usage: gen-pass.py [-h] [-c {n,a}] [length]

positional arguments:
  length

optional arguments:
  -h, --help            show this help message and exit
  -c {n,a}, --charset {n,a}
                        a = alphabets, n = a + nums, default is printables.
$ python3 gen-pass.py
B1h(=,qW;ClW
$ python3 gen-pass.py 24 -c n
wup4sGyAb1GHp7ajE9PL5Vk0
$

Recommended Posts

Ich mache ein Passwort!
Lass uns ein Squashspiel machen
Machen Sie einen Funktionsdekorateur
Erstellen Sie eine Distanzmatrix
Machen Sie einen Nyan-Knopf
Mach ein Spiel im Tetris-Stil!
Erstellen Sie einen Base64-Decoder
Machen wir einen Discord Bot.
Erstellen Sie ein Blueqat-Backend ~ Teil 2
[Django] Erstellen Sie ein Pulldown-Menü
Machen Sie einen LINE BOT (Chat)
Erstellen Sie ein Lesezeichen in Python
Machen Sie eine Lotterie mit Python
Machen Sie Responder zu einem Daemon (Dienst)
Machen Sie ein Feuer mit kdeplot
Erstellen Sie einen Berechnungsbohrdruck
Machen wir eine Remote-Rumba [Hardware]
Wie erstelle ich eine japanisch-englische Übersetzung?
Machen Sie eine Santa-Kennung aus einem Santa-Bild
Lassen Sie uns eine Remote-Rumba erstellen [Software]
Machen Sie eine Tweet-Box für Pepper
Lassen Sie uns eine GUI mit Python erstellen.
Machen Sie einen Sound mit Jupyter Notebook
Machen wir einen Spot Sale Service 2
Erstellen Sie mit TensorFlow eine Gesichtserkennung
Wie man einen lockeren Bot macht
Machen wir einen Blockbruch mit wxPython
So erstellen Sie eine rekursive Funktion
Python / Machen Sie ein Diktat aus einer Liste.
Erstellen Sie ein Empfehlungssystem mit Python
[Blender] So erstellen Sie ein Blender-Plug-In
[Python] Generiere ein Passwort mit Slackbot
Machen Sie einen Filter mit einer Django-Vorlage
Lassen Sie uns ein Diagramm mit Python erstellen! !!
Machen wir mit xCAT einen Spacon
Wie erstelle ich einen Crawler?
Erstellen Sie mit PySide einen Modelliterator
Machen Sie eine schöne Grafik mit Plotly
Machen Sie einen Vorhanggenerator mit Blender
Machen wir einen Spot Sale Service 3
Lassen Sie uns mit Python ein Shiritori-Spiel machen
Erstellen Sie einen Videoplayer mit PySimpleGUI + OpenCV
[Python] Wie man eine Klasse iterierbar macht
Machen wir einen Jupyter-Kernel
Erstellen Sie ein Beziehungsdiagramm von Python-Modulen
Machen Sie einen seltenen Gacha-Simulator mit Flask
Machen Sie Jupyter Notebook zu einem Dienst unter CentOS
Machen Sie Unity Accelerator zu einem Dienst unter Linux
Machen Sie mit matplotlib eine teilweise gezoomte Figur
Machen Sie ein Zeichnungsquiz mit kivy + PyTorch
Lassen Sie uns mit Python langsam sprechen
Erstellen Sie einen Kaskadenklassifizierer mit Google Colaboratory
Lassen Sie uns mit PLY 1 eine einfache Sprache erstellen
Qt für Python App Desktop App
Machst du so etwas wie eine Rakete?
Machen Sie eine Logikschaltung mit Perceptron (Multilayer Perceptron)
Machen Sie Ja Nein Popup mit Kivy
Lassen Sie uns mit flask-babel eine mehrsprachige Site erstellen
Machen Sie einen Waschtrocknungs-Timer mit Raspberry Pi