2016-07-20 132 views
-2

我在看这需要我Python的随机列表生成

1.创建产生大小为2的随机列表(其中它是随机生成的字母两个元素的列表)功能有点挑战。

2.创建一个函数,用于评估随机生成的列表与另一个预定义列表的比较程度,因此通常我们可以考虑每个位置有多少匹配。

3.创建一个函数,它不断地调用和计分一个新的随机生成的列表,直到我们达到一定大小的分数。它还希望为每1000个生成的列表打印最佳分数。

我已经完成了1.和2. 3.我创建了一个函数,它反复调用分数函数,直到我们满足特定大小的分数,但是我不确定如何打印每个分数的最佳分数1000生成列表这是因为我已经使用了一个while循环来持续生成,直到达到特定大小的分数。我的一个解决方案是通过从空列表开始追加每个分数来将分数存储在列表中。然后使用最大函数打印最佳分数,因为列表被切成大小为1000的块。

是否有更好的方法?

+1

你能提供代码吗?听起来不错。 – Ohumeronen

+0

谢谢你们,答案非常好 –

回答

1

使用您每次运行增量增加的变量计数,并且当计数%1000 = 0并且计数> 0时,打印您从可能保存到全局变量的迭代中获得的最高分数。

1

你能定义一个名为最大,使得变量:

if score > maximum: 
    maximum = score 

1

你需要的是最大函数的基本定义。一个值等于第一个分数,然后分配给新的分数,如果达到更好的分数。

if new_score > max_score: 
    max_score = new_score 

和你的建议,我在这方面的经验表明,采用我的建议还是你(存储所有的分数在列表中,然后调用最大值)不保存在复杂的手段多的时间,但是如果你不这样做需要除最大值以外的分数,你只是在浪费空间。