回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我不能使用Numpy或任何其他库函数,因为这是一个我必须要做的问题,我必须定义我自己的方式。在</p>
<p>我正在编写一个函数,它以两个列表(二维)作为参数。该函数应计算两个列表的元素乘积,并将它们存储在第三个列表中,然后从函数返回此结果列表。
输入列表示例如下:</p>
<h3>列表1:</h3>
<pre><code>[[2,3,5,6,7],[5,2,9,3,7]]
</code></pre>
<h3>列表2:</h3>
^{pr2}$
<p>该函数将打印以下列表:</p>
<pre><code>[[10, 6, 45, 18, 49], [5, 6, 45, 6, 14]]
</code></pre>
<p>即<code>2*5=10</code>,<code>3*2=6</code>,<code>5*9=45</code>。。。等等。在</p>
<p>这是我下面的代码,但它只适用于一个包含2个列表(元素)的列表,就像上面的例子一样,它可以很好地工作,但是我想要的是编辑我的代码,这样无论二维列表中有多少个列表(元素),它应该在一个新的二维列表中打印出它的元素级产品,例如,它也应该为</p>
<pre><code>[[5,2,9,3,7],[1,3,5,2,2],[1,3,5,2,2]]
</code></pre>
<p>或者</p>
<pre><code>[[5,2,9,3,7],[1,3,5,2,2],[1,3,5,2,2],[5,2,9,3,7]]
</code></pre>
<p>或者在整个列表中有任何数量的列表。在</p>
<pre><code>def ElementwiseProduct(l,l2):
i=0
newlist=[] #create empty list to put prouct of elements in later
newlist2=[]
newlist3=[] #empty list to put both new lists which will have proudcts in them
while i==0:
a=0
while a<len(l[i]):
prod=l[i][a]*l2[i][a] #corresponding product of lists elements
newlist.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(prod) #adding the products to new list
a+=1
i+=1
while i==1:
a=0
while a<len(l[i]):
prod=l[i][a]*l2[i][a] #corresponding product of lists elements
newlist2.append(prod) #adding the products to new list
a+=1
i+=1
newlist3.append(newlist)
newlist3.append(newlist2)
print newlist3
#2 dimensional list example
list1=[[2,3,5,6,7],[5,2,9,3,7]]
list2=[[5,2,9,3,7],[1,3,5,2,2]]
ElementwiseProduct(list1,list2)
</code></pre>