distinguish between instances of class
<p>Im completly new to Python. Following this guide: <a href="http://roguebasin.roguelikedevelopment.org/index.php/Complete_Roguelike_Tutorial,_using_python%2Blibtcod" rel="nofollow">http://roguebasin.roguelikedevelopment.org/index.php/Complete_Roguelike_Tutorial,_using_python%2Blibtcod</a></p>

<p>I have a simple question: When all the monsters have been created here, how does python distinguish between each instance of the class? As far as i can tell, all the instances are named "monster".</p>

<pre><code>def place_objects(room):
#choose random number of monsters
num_monsters = libtcod.random_get_int(0, 0, MAX_ROOM_MONSTERS)

for i in range(num_monsters):
    #choose random spot for this monster
    x = libtcod.random_get_int(0, room.x1, room.x2)
    y = libtcod.random_get_int(0, room.y1, room.y2)

    #only place it if the tile is not blocked
    if not is_blocked(x, y):
        if libtcod.random_get_int(0, 0, 100) &lt; 80:  #80% chance of getting an orc
            #create an orc
            fighter_component = Fighter(hp=10, defense=0, power=3, death_function=monster_death)
            ai_component = BasicMonster()

            monster = Object(x, y, 'o', 'orc', libtcod.desaturated_green,
                blocks=True, fighter=fighter_component, ai=ai_component)
        else:
            #create a troll
            fighter_component = Fighter(hp=16, defense=1, power=4, death_function=monster_death)
            ai_component = BasicMonster()

            monster = Object(x, y, 'T', 'troll', libtcod.darker_green,
                blocks=True, fighter=fighter_component, ai=ai_component)

        objects.append(monster)
</code></pre>
