Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
while loops
#11
OK, I think I found the bug, below the final revision:

# Creation of an empty list of all users and ask to all of them the name until done
users = []
user = ''
while user != 'Done':
    user = input("Please write your name here: ").title().strip()
    if user != 'Done':
        users.append(user)
print(   )

# Screening of all users and identification of banned users
banned_users = ['John', 'Tom', 'Jane']
accepted_users = []
for name in users:
    if name in banned_users:
        banned_users.append(name)
        print(f'{name} is banned! They cannot come in!')
        banned_users.remove(name)
        continue
    else:
        if name not in (banned_users):
                accepted_users.append(name)
                print(f'{name} is allowed in, welcome! Full list of guests is now: {accepted_users}')
print(   )

# List of final group of accepted guests
print(f'\nYour final group of guests is: {accepted_users}')
Reply
#12
You are still doing it wrong. THERE SHOULD ONLY BE ONE LOOP!!! You should be checking if the name is banned immediately after the name is entered (3b). Only add the name to the list if it is not banned (3b1).
Paulman likes this post
Reply


Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020