Skip to content

Commit bb4ce28

Browse files
Merge pull request #2717 from lighting9999/patch-1
Fix password Generation Logic
2 parents 5c7c8c4 + 84aa948 commit bb4ce28

File tree

1 file changed

+16
-19
lines changed

1 file changed

+16
-19
lines changed

passwordGen.py

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,22 @@
55
digits = "1234567890"
66
specialChars = "!@#$%^&*-_+="
77

8-
passLen = 10 # actual generated password length will be this length + 1
98
myPass = ""
109

11-
for i in range(passLen):
12-
while (len(myPass)) <= 2:
13-
index = random.randrange(len(lChars))
14-
myPass = myPass + lChars[index]
15-
myPassLen = len(myPass)
16-
while (len(myPass)) <= 5:
17-
index = random.randrange(len(digits))
18-
myPass = myPass + digits[index]
19-
myPassLen = len(myPass)
20-
while (len(myPass)) <= 7:
21-
index = random.randrange(len(specialChars))
22-
myPass = myPass + specialChars[index]
23-
myPassLen = len(myPass)
24-
while (len(myPass)) <= 10:
25-
index = random.randrange(len(uChars))
26-
myPass = myPass + uChars[index]
27-
myPassLen = len(myPass)
10+
# Generate 3 lowercase letters
11+
for _ in range(3):
12+
myPass += random.choice(lChars)
2813

29-
print(myPass)
14+
# Generate 3 digits
15+
for _ in range(3):
16+
myPass += random.choice(digits)
17+
18+
# Generate 2 special characters
19+
for _ in range(2):
20+
myPass += random.choice(specialChars)
21+
22+
# Generate 2 uppercase letters
23+
for _ in range(2):
24+
myPass += random.choice(uChars)
25+
26+
print(myPass) # Output: 10-character password (e.g. "abc123!@AB")

0 commit comments

Comments
 (0)