【发布时间】:2016-07-30 23:32:49
【问题描述】:
所以,我想要一组彼此不同的 XY 位置。为了做到这一点,我使用了一个列表来存储变量 XY,这些变量是随机生成的。如果位置不在列表中,则将其添加到列表中,如果在列表中,则为其重新创建位置。
我不确定这是否适用于所有情况,并想知道是否有更好的方法来做到这一点。
import random
positionList = []
for i in range(6):
position = [random.randint(0,5),random.randint(0,5)]
print("Original", position)
while position in positionList:
position = [random.randint(0,5),random.randint(0,5)]
positionList.append(position)
print(position)
重做的位置能否与列表中的其他位置相同?
【问题讨论】:
-
顺便说一句,Python 3.0 真的被弃用了。 Python3.x 3.4 的开发已经年
-
@Slayer 嗨,不。我只想要 6 个不同的 XY 位置
-
制作
positionList = set()会删除线性查找,您是采样一次还是多次?您还需要使用元组添加到集合中 -
那么我需要将每个位置转换为元组吗?
-
pos = random.randint(0,5),random.randint(0,5)if pos not in pos_set。pos_set.add(pos)代替你的追加
标签: python loops python-3.x location