Mercurial > hg > config
annotate python/generate_password.py @ 929:7c4be71a560b default tip
remove old aliases
| author | Jeff Hammel <k0scist@gmail.com> |
|---|---|
| date | Mon, 20 Oct 2025 15:22:19 -0700 |
| parents | 1b6f0650dabb |
| children |
| rev | line source |
|---|---|
|
871
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
1 #!/usr/bin/env python |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
2 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
3 import random |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
4 import string |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
5 import sys |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
6 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
7 pool = ''.join([string.ascii_letters, |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
8 string.digits, |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
9 string.punctuation]) |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
10 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
11 contents = [(string.ascii_lowercase, 6), |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
12 (string.ascii_uppercase, 6), |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
13 (string.punctuation, 2)] |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
14 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
15 def password(length=16, pool=pool): |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
16 return ''.join(random.sample(pool, length)) |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
17 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
18 def main(args=sys.argv[1:]): |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
19 """CLI""" |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
20 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
21 print(password()) |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
22 |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
23 if __name__ == '__main__': |
|
1b6f0650dabb
add script to generate passwords
Jeff Hammel <k0scist@gmail.com>
parents:
diff
changeset
|
24 main() |
