On Tue, Nov 29, 2011 at 2:31 PM, ADRIAN KELLY <kellyadr...@hotmail.com>wrote:
> i am trying to create a program that will allow users to enter items and > their prices; should i be looking at a list, tuple or what? > The entering part isn't as important as how you want to display the data. For instance, here's a program that allows the user to input an unlimited amount of data (using Python 3.x): while input("Enter q to quit, or an item: ").lower() not in ('q', 'quit', 'goodbye'): input("Enter the price: ") Of course it doesn't store the data, so it's pretty useless. But it does allow the user to input whatever they want. If you wanted to simply create a collection of items you could do it as a list with alternating values: inventory = ['Crunchy Frog', 4.13, 'Anthrax Ripple', 12.99999999999, 'Spring Surprise', 0.00] for x in range(0, len(inventory)-1, 2): print(inventory[x], inventory[x+1]) Or as a list of tuples: inventory = [('Norwegian Blue', 500.00), ('Slug', 500.00), ('Cage', 50.00)] for item in inventory: print(item[0], item[1]) Or a dictionary: inventory = {'Spam':5.00, 'Spam on eggs':10.00, 'Spam on Spam':7.50} for item, price in inventory.items(): print(item, price) Or if you wanted to get ridiculous, you could go with a list of classes: class Item: def __init__(self, desc='', price=0.00): self.desc = desc self.price = price def __repr__(self): return str(self) def __str__(self): return "{0} - {1}".format(self.desc, self.price) inventory = [Item('Lumberjack', 5.5), Item('Tree', 50), Item('Flapjack', 0.5)] for item in inventory: print(item) It just depends on how complex you want to get! HTH, Wayne
_______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor