// Interaktív bemutató + kód + dokumentáció
A program csak beépített Python könyvtárakat használ. A random modul felelős a véletlenszerű karakterek kiválasztásáért, a string modul pedig előre definiált karakterkészleteket biztosít (betűk, számok, speciális karakterek).
Ez a fő generáló függvény. Paraméterként kapja a kívánt hosszt és a logikai kapcsolókat (szám, betű, stb.). Ezek alapján összeállítja a lehetséges karakterek halmazát, majd random.choice() segítségével véletlenszerűen kiválaszt belőle annyit, amennyit a felhasználó kért.
A generált jelszót névvel együtt elmenti egy jelszavak.txt fájlba. Az "a" (append) módnak köszönhetően minden új jelszó a fájl végéhez adódik hozzá, így a korábban mentett adatok nem vesznek el.
Megnyitja és kiolvassa a jelszavak.txt fájlt, majd megjeleníti a tartalmát. Ha a fájl nem létezik (még sosem mentettünk jelszót), a FileNotFoundError kivételt kezeli és erről tájékoztatja a felhasználót.
A program belépési pontja. Egy végtelen while True ciklus fut, ami addig ismétli a főmenüt, amíg a felhasználó ki nem lép. Ez a szerkezet tipikus konzolalkalmazásoknál.
A random.choice() pszeudo-véletlenszámokat generál, ami elegendő általános célú jelszavakhoz. Kritikus biztonsági alkalmazásoknál a secrets modult érdemes használni, amely kriptográfiai minőségű véletlenszámokat produkál.
Az if __name__ == "__main__" blokk biztosítja, hogy a main() csak akkor fusson le, ha közvetlenül indítják a scriptet (nem importálják másik fájlból).
A felhasználó három lehetőség közül választhat: megtekinti a mentett jelszavakat, új jelszót generál, vagy kilép a programból.
Ha az „Új jelszó” opciót választja, a program sorban bekéri: a hosszt (egész szám validálással), majd i/n kérdésekkel a karaktertípusokat: szám, kisbetű, nagybetű, speciális karakter.
A jelszo_generalas() függvény összerakja a karakterkészletet és elkészíti a jelszót, amit azonnal megjelenít a felhasználónak.
A felhasználó megadhat egy nevet (pl. „Gmail”), majd a rendszer „Gmail: xK3#mPq9” formátumban hozzáfűzi a jelszavak.txt fájlhoz.
Szükséges a Python 3.x verzió. Letölthető: python.org/downloads
Mentsd le a jelszo_generator.py fájlt egy tetszőleges mappába.
Navigálj a mappába, majd írd be: python jelszo_generator.py