On 1/12/2012 5:48 PM, Claude Matherne wrote:
Hello all,
I am a beginner to python and I am trying to make a simple program
that takes in some names as input into a list and then randomly picks
a vaule from that list as a winner.
Here is the code:
import random
choice = None
names = [ ]
while choice != "0":
print(
"""
0 - Exit
1 - Enter a name
2 - Pick a winner
""")
choice = input("Choice: ")
print()
if choice == "0":
print ("Goodbye.")
elif choice == "1":
name = input("Please enter a name: ")
names.append(name)
print (names, "have been entered.")
elif choice == "2":
pick = len(names)
win_number =random.randint(0,pick)
print (names[win_number], " is the winner!")
input("/n/nPress enter to exit.")
First problem, sometimes I get a error where the value is out of
range. Problem becuase of the way I set up the random value.
randint returns random integer in range [a, b], including both end
points. List indexes start at 0. Sufficient?
Second problem, but not a big one, is when I print the lists of names
as they are entered, I get quotations around the name.
I bet you are seeing something like ['joe', pete'] since you are
printing a list. true? In general copy and paste the undesired output in
the email. Try print(','.join(names)
--
Bob Gailer
919-636-4239
Chapel Hill NC
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor