add/remove items in a list

Posted by Jam on Stack Overflow See other posts from Stack Overflow or by Jam
Published on 2010-03-23T01:18:46Z Indexed on 2010/03/23 1:21 UTC
Read the original article Hit count: 460

Filed under:
|

I'm trying to create a player who can add and remove items from their inventory. I have everything working, I just have 1 small problem. Every time it prints the inventory, 'None' also appears. I've been messing with it to try and remove that, but no matter what I do, 'None' always appears in the program! I know I'm just missing something simple, but I can't figure it out for the life of me.

class Player(object):

def __init__(self, name, max_items, items):
    self.name=name
    self.max_items=max_items
    self.items=items

def inventory(self):
    for item in self.items:
        print item

def take(self, new_item):
    if len(self.items)<self.max_items:
        self.items.append(new_item)
    else:
        print "You can't carry any more items!"

def drop(self, old_item):
    if old_item in self.items:
        self.items.remove(old_item)
    else:
        print "You don't have that item."

def main(): player=Player("Jimmy", 5, ['sword', 'shield', 'ax']) print "Max items:", player.max_items print "Inventory:", player.inventory()

choice=None
while choice!="0":
    print \
    """
    Inventory Man

    0 - Quit
    1 - Add an item to inventory
    2 - Remove an item from inventory
    """

    choice=raw_input("Choice: ")
    print

    if choice=="0":
        print "Good-bye."

    elif choice=="1":
        new_item=raw_input("What item would you like to add to your inventory?")
        player.take(new_item)
        print "Inventory:", player.inventory()

    elif choice=="2":
        old_item=raw_input("What item would you like to remove from your inventory?")
        player.drop(old_item)
        print "Inventory:", player.inventory()


    else:
        print "\nSorry, but", choice, "isn't a valid choice."

main()

raw_input("Press enter to exit.")

© Stack Overflow or respective owner

Related posts about python

Related posts about beginner