这是我的代码:
def lotteryNumbers(m,n):
newList = []
uniqueList = []
n=n+1
for i in range(1, n):
if i <= n:
randomness = int(random.randint(1,m))
newList.append(int(randomness))
for number in newList:
if number not in newList:
uniqueList.append(number)
sortNewList = uniqueList.sort()
print(newList)
print(uniqueList)
return uniqueList
但在uniqueList中没有显示任何内容,并添加了第二个for循环。取出后,我得到了newList的列表,但数字并没有区别。我正在尝试不使用set和更多if项不在newList中,然后追加到uniqueList并返回具有唯一编号的排序(升序)列表的情况。
最佳答案
因为pellucidcoder提供了有效的解决方案,所以只是为了解决OP的其他一些问题
uniqList中没有任何显示,因为第二个for循环:
循环遍历newList中的所有项目
询问项目是否不在newList中
第2部分永远不会成立,因为该项目来自newList,因此uniqList返回为空。如果您将订单更改为:
关于python - 试图使排序列表只有唯一的数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46627381/