【问题标题】:Multiplying all elements in one array by respective element of a second arrary [duplicate]将一个数组中的所有元素乘以第二个数组的相应元素[重复]
【发布时间】:2014-06-05 13:55:17
【问题描述】:

大家好,我想知道如何相乘,例如,如果我们有一个 [1,2,3,4] 字符串和另一个 [2,3,4,6] 字符串,你如何乘以 1 *2, 2*3, 3*4 .... 所以它的每个数组元素都由第二个元素中的相应元素组成?如果这样更容易,我也有这些浮动形式的列表。我的朋友建议:

    file5 = open("New_list3",'r+')
    for line in file3:
        mult = float(line.strip())*float(file4.readline().strip())
        file5.write(mult+'\n')

其中 file3 = 数字字符串列表都在不同的行和文件 4 相同但不同的值,但这不起作用。想法?每个列表也非常非常长。

    [i*j for i,j in zip(file3,file4)] 
    file3=[i.rstrip() for i in file3] file4=[i.rstrip() 
    for i in file4] [float(i)*float(j) for i,j in zip(file3,file4)]

【问题讨论】:

  • 这些值实际上是在文件中吗?还是它们只是列表?
  • 为什么这是指向另外两个骗子的骗子?不要让我带出一个过度和滥用的模因。 ;)

标签: python arrays list elements


【解决方案1】:
[ i*j for i,j in zip(a,b)]

试试这个

file1=[i.rstrip() for i in file1]
file2=[i.rstrip() for i in file2]

[ float(i)*float(j) for i,j in zip(file1,file2)]

其他方式

for i,j in zip(file1,file2):
    out.write(float(i)*float(j) )

【讨论】:

  • 该死的代码太优雅了。
  • @ParthianShot 我不懂
  • 我只是在补充您的代码。非常简洁。
  • @ParthianShot 谢谢你:)
  • 所以我不确定你是不是要拿走整个代码块并用 urs 替换它?就像 [i*j for i,j in zip(file3,file4)] file3=[i.rstrip() for i in file3] file4=[i.rstrip() for i in file4] [float(i )*float(j) for i,j in zip(file3,file4)]
猜你喜欢
  • 1970-01-01
  • 2023-03-03
  • 1970-01-01
  • 2021-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-16
  • 2013-11-08
相关资源
最近更新 更多