Python Forum
First program feedback
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
First program feedback
#1
Hi,

I am new to python and i have been using it for 2 days now and have so far learnt statements and loops e.g. the while/for loops and elif statements etc. I have created a program based on a practice exercise question i found on the internet and have created my first program. Its a pointless program which just asks a user for a password and to keep asking a few times if entered wrong and grant access if correct. (Took me about an hour to write this hahhahaha but proud of myself). Anyway, i was wondering if anyone could have a look at it and see if theres any bad habits ive picked up or anyway i coulf iron the code out to make it look neater or just general feedback. Any advice would be appreciated. I have included it below.

print ('Please enter password')
password = input ()
n = 4
while password != 'swordfish':
    while n > 1:
        print ('Incorrect password. Try again. The number of attempts remaining is ' + str(n-1))
        n = n - 1
        password = input()
        while n == 1:
            print ('Access Blocked')
            break
if password == 'swordfish':
    print ('Access granted')
Edit: indentations are not showing on this post. here is a screenshot of it https://ibb.co/n7XuHn
Reply
#2
Ok. Its been some time since you've posted this but still here is your feedback.
Here is the output I got for entering a wrong password (is it meant to do that?)
Please enter password
hello
Incorrect password. Try again. The number of attempts remaining is 3
swordfish
Incorrect password. Try again. The number of attempts remaining is 2
swordfish
Incorrect password. Try again. The number of attempts remaining is 1
swordfish
Access Blocked
Access granted
>>> 
Also, you can do this instead. for line 1 and 6
>>> input('Enter something: ')
Is pretty much the same as

>>> print('Enter something: ')
>>> input()
The while loop in line 9 is not required. You could just use an if statement like this

if n == 1:
    print('Access Blocked')
Other than that I don't see anything that looks off.
Now one thing I will say is that in the second while loop at line 5, it seems to me that you need to check the password to see if it's entered correctly but that's just me the question could have been different.

Keep it up :)
Reply
#3
(Mar-21-2018, 09:59 AM)tannishpage Wrote: Ok. Its been some time since you've posted this but still here is your feedback. Here is the output I got for entering a wrong password (is it meant to do that?)
 Please enter password hello Incorrect password. Try again. The number of attempts remaining is 3 swordfish Incorrect password. Try again. The number of attempts remaining is 2 swordfish Incorrect password. Try again. The number of attempts remaining is 1 swordfish Access Blocked Access granted >>> 
Also, you can do this instead. for line 1 and 6
 >>> input('Enter something: ') 
Is pretty much the same as
 >>> print('Enter something: ') >>> input() 
The while loop in line 9 is not required. You could just use an if statement like this
 if n == 1: print('Access Blocked') 
Other than that I don't see anything that looks off. Now one thing I will say is that in the second while loop at line 5, it seems to me that you need to check the password to see if it's entered correctly but that's just me the question could have been different. Keep it up :)

Sorry about the late response. I haven't been on here in a while after a had troule logging back in. But I have now taken on your advice and it seems better structured now though. Thanks. Still got a long way to go though to progress
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Feedback on my first program? jibby 6 4,597 Jul-16-2018, 08:42 AM
Last Post: WolfWayfarer
  I need some feedback on this program tannishpage 3 3,054 Mar-22-2018, 05:31 AM
Last Post: tannishpage

Forum Jump:

User Panel Messages

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