Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #63589

Re: Constructive Criticism

From Peter Otten <__peter__@web.de>
Subject Re: Constructive Criticism
Date 2014-01-09 10:56 +0100
Organization None
References <8574fa07-af12-4e62-9cbc-3bd00802b6e2@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.5252.1389261357.18130.python-list@python.org> (permalink)

Show all headers | View raw


jeremiahvalerio123@gmail.com wrote:

> Hi, hows it going I've been self teaching myself python, and i typed up
> this small script now i know its not the best the coding is not the best
> but i would like to know of ways to make a small script like this better
> so all constructive critisim is Welcome.
> 
> 
> 
> Here is the link to the code
> 
>    " http://pastebin.com/5uCFR2pz "

>     time.sleep(1)
>     import time
>     print("Closing in 9 ")
>     time.sleep(1)
>     import time
>     print("Closing in 8 ")

- You should import modules just once, at the beginning of your script.

- Repetetive tasks are best handled with a for-loop, e. g.:

>>> import time
>>> for seconds_left in reversed(range(1, 10)):
...     print("Closing in", seconds_left, "seconds")
...     time.sleep(1)
... 
Closing in 9 seconds
Closing in 8 seconds
Closing in 7 seconds
Closing in 6 seconds
Closing in 5 seconds
Closing in 4 seconds
Closing in 3 seconds
Closing in 2 seconds
Closing in 1 seconds

>     user_input = input("\nWhos your favorite Football team? \n 1.Arizona
>     Cardinals\n 2.Atlanta Falcons\n 3.Baltimore Ravens\n 4.Buffalo Bills\n
>     5.Miami Dolphins\n 6.Minnesota Vikings \n 7.New England Patriots \n
>     8.New Orleans Saints \n 9.Carolina 
[snip]

Python offers triple-quoted strings which may include newline literals:

user_input = input("""
Who's your favorite Football team?
 1. Arizona Cardinals
 2. Atlanta Falcons
...
""")

> if user_input == "1" :
>     print("\nThey suck! BYE!")
>  
> elif user_input == "2" :
>     print("\nThey suck! BYE!")
>  
> elif user_input == "3" :
>     print("\nThey suck!BYE!")
[snip]

Ignoring the typos you are taking the same action for all inputs but "17". 
So:

if user_input != "17":
    print()
    print("They suck! BYE!")

You should give some thought how unexpected user input like "", "123", 
"whatever" should be handled.

> elif user_input == "no" :
>     print("\nAlrighty bye have a nice day! :)\n\nClosing in 10.")
>     import time
>     time.sleep(1)
>     import time
>     print("Closing in 9 ")
>     time.sleep(1)
>     import time
>     print("Closing in 8 ")
>     time.sleep(1)
>     import time

OK, you are doing the count-down thing twice -- time to write a function, 
say countdown(), that you can put where you need a count-down instead of the 
repetetive code.

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Constructive Criticism jeremiahvalerio123@gmail.com - 2014-01-08 21:56 -0800
  Re: Constructive Criticism Paul Pittlerson <menkomigen6@gmail.com> - 2014-01-08 22:06 -0800
  Re: Constructive Criticism Ben Finney <ben+python@benfinney.id.au> - 2014-01-09 17:09 +1100
    Re: Constructive Criticism jeremiah valerio <jeremiahvalerio123@gmail.com> - 2014-01-08 22:16 -0800
      Re: Constructive Criticism Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-01-09 07:03 +0000
  Re: Constructive Criticism Peter Otten <__peter__@web.de> - 2014-01-09 10:56 +0100
    Re: Constructive Criticism jeremiah valerio <jeremiahvalerio123@gmail.com> - 2014-01-09 12:08 -0800
  Re: Constructive Criticism Christopher Welborn <cjwelborn@live.com> - 2014-01-09 14:54 -0600
    Re: Constructive Criticism jeremiah valerio <jeremiahvalerio123@gmail.com> - 2014-01-09 13:05 -0800
      Re: Constructive Criticism Alister <alister.ware@ntlworld.com> - 2014-01-10 08:56 +0000
        Re: Constructive Criticism jeremiah valerio <jeremiahvalerio123@gmail.com> - 2014-01-10 12:26 -0800
          Re: Constructive Criticism Chris Angelico <rosuav@gmail.com> - 2014-01-11 07:34 +1100
          Re: Constructive Criticism Mark Lawrence <breamoreboy@yahoo.co.uk> - 2014-01-10 21:24 +0000

csiph-web