Python 存储并访问一对坐标

Python 存储并访问一对坐标,python,django,Python,Django,我第一次尝试编程游戏。这将是一个在web浏览器中玩的简单冒险游戏,我将使用django在后台用html和python显示内容。我在定义map类时遇到问题,即在坐标上操作 我的地图需要有一个繁殖位置和墙(现在)。所以对于“繁殖”我可以 …但这感觉像是一个丑陋的解决办法。我以前从未使用过列表,我还记得python中有一个字典。他们有什么特殊的优势吗?请记住,产卵位置不会改变,它们只需要存储玩家产卵的坐标。有人有主意吗 我的第二个问题是墙:我真的需要在这里使用某种列表。但我还是不明白它们是如何工作的,

我第一次尝试编程游戏。这将是一个在web浏览器中玩的简单冒险游戏,我将使用django在后台用html和python显示内容。我在定义map类时遇到问题,即在坐标上操作

我的地图需要有一个繁殖位置和墙(现在)。所以对于“繁殖”我可以

…但这感觉像是一个丑陋的解决办法。我以前从未使用过列表,我还记得python中有一个字典。他们有什么特殊的优势吗?请记住,产卵位置不会改变,它们只需要存储玩家产卵的坐标。有人有主意吗

我的第二个问题是墙:我真的需要在这里使用某种列表。但我还是不明白它们是如何工作的,尤其是在Django

所以总结一下,我最大的问题是弄清楚类似Django的列表是如何工作的,它们使用哪个
字段
,以及如何访问它们


谢谢

开箱即用,Django不支持在字段中存储列表。针对单个字段存储多个数据的唯一方法是与另一个表的
manytomy
关系。。。然而,当您真正想要存储的只是两个整数元组的列表时,这似乎有点过分了

看一看上面的答案。它是Django的ListField的一个实现,它允许存储基本Python类型,即元组列表

这是一个代码如何工作的示例(未经测试,改编他们的“将其作为该问题的旋转示例”):

然后,选择一个随机的产卵地点:

>>> import random
>>> random.choice(map.spawn_locations)
(24, 52)
>>> random.choice(map.spawn_locations)
(1, 1)

如果您只需要存储列表,也许redis比Django模型更有用@JRicardo000我正在使用Django,因为我想将地图存储在数据库中。@dm03514我知道,但是我找不到关于我的问题的任何信息-在Django模型中使用列表。谢谢!正是我要找的!
>>> from foo.models import Map, ListField
>>> map = Map()
>>> map.spawn_locations
[]
>>> map.spawn_locations = [(1, 1), (-1, 12), (24, 52)]
>>> map.spawn_locations
[(1, 1), (-1, 12), (24, 52)]
>>> f = ListField()
>>> f.get_prep_value(map.spawn_locations)
u'[(1, 1), (-1, 12), (24, 52)]'
>>> import random
>>> random.choice(map.spawn_locations)
(24, 52)
>>> random.choice(map.spawn_locations)
(1, 1)