我有一本存储怪物/怪物位置的字典:
mobs = {}
mobs[0] = {'x': 45, 'y': 65, 'HP': 12, 'target':0 }
mobs[1] = {'x': 57, 'y': 15, 'HP': 37, 'target':0 }
mobs[2] = {'x': 33, 'y': 87, 'HP': 24, 'target':0 }
我也有类似的players = {}
当玩家移动时,我想搜索小怪词,找到范围内的所有小怪 - X和Y的距离都小于5。
我只用了几天学习Python,据我所知,到目前为止,我可以通过每次播放器移动时循环遍历dict来做到这一点:
for a in mobs:
mobX = mobs[a]['x']
mobY = mobs[a]['y']
# compare to playerX,playerY etc
但我确信有更好/更快的方式?只是担心如果小怪dict中有数百个条目,这个循环会变慢吗? SQLite或数据库会更好吗?