DEV Community

Cover image for My #100daysOfCode Challenge - Python 100 projects in 100 days - Journal Entries - Day 5
Anthony Beckford🚀
Anthony Beckford🚀

Posted on

1

My #100daysOfCode Challenge - Python 100 projects in 100 days - Journal Entries - Day 5

Day 5 - Password Generator

Password Generator Project

import random
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
symbols = ['!', '#', '$', '%', '&', '(', ')', '*', '+']

print("Welcome to the PyPassword Generator!")
nr_letters= int(input("How many letters would you like in your password?\n"))
nr_symbols = int(input(f"How many symbols would you like?\n"))
nr_numbers = int(input(f"How many numbers would you like?\n"))

Eazy Level - Order not randomised:

e.g. 4 letter, 2 symbol, 2 number = JduE&!91

password = ""

for char in range(1, nr_letters + 1):
password += random.choice(letters)

for char in range(1, nr_symbols + 1):
password += random.choice(symbols)

for char in range(1, nr_numbers + 1):
password += random.choice(numbers)

print(password)

Hard Level - Order of characters randomised:

e.g. 4 letter, 2 symbol, 2 number = g^2jk8&P

password_list = []

for char in range(1, nr_letters + 1):
password_list.append(random.choice(letters))

for char in range(1, nr_symbols + 1):
password_list += random.choice(symbols)

for char in range(1, nr_numbers + 1):
password_list += random.choice(numbers)

print(password_list)
random.shuffle(password_list)
print(password_list)

password = ""
for char in password_list:
password += char

print(f"Your password is: {password}")

Key Takeaway:

  1. Learned about Python Loops and the range()

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (0)

Billboard image

Create up to 10 Postgres Databases on Neon's free plan.

If you're starting a new project, Neon has got your databases covered. No credit cards. No trials. No getting in your way.

Try Neon for Free →

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay