下面的简单代码将生成一个包含三个元素的列表,以及同一行中每个列表中的元素总数。你知道吗
import random
for i in xrange(3):
my_randoms1 = [random.randrange(1,6,1) for _ in range (3)]
print my_randoms1,"\t", sum(my_randoms1)
现在的问题是:如何添加所有列表的垂直对应元素,并将所有列表的顶部的新列表中的和显示为[T1,T2,T3]?谢谢
[T1,T2,T3]
[1, 1, 2] 4
[5, 3, 4] 12
[5, 1, 5] 11
如果要对这些列表执行其他操作,可能需要将它们存储在某种数据结构中,可能需要使用Numpy将它们放置在矩阵中。你知道吗
最简单的方法就是使用某种变量,比如
col_sums = [0,0,0]
(在循环之前初始化),并在生成每个随机列表时添加其值。您可以使用嵌套循环来实现这一点,但如果您想获得更多乐趣,可以使用以下方法:zip()
取你的旧的和和你的随机值,给你一个元组,其中包含粘在一起的每个列表的N第th个值。例如,在第一次迭代中,col_sums = [0,0,0]
和zip(col_sums, my_randoms)
将给出[(0,1), (0,1), (0,2)]
。map
在该列表中pingsum
将生成一个类似[1, 1, 2]
的新列表。如果你把这个放在每个迭代中,你会在最后得到一个很好的总结。你知道吗相关问题 更多 >
编程相关推荐