微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python中的数组操作

我如何在 Python中执行以下操作:

array_1 = [x1,x2,x3,x4,x5,x6,....]
array_2 = [y1,y2,y3]

array_3 = [(x1-y1),(x2-y2),(x3-y3),(x4-y1),(x5-y2),(x6-y3)]

array_2中的元素数总是小于array_1中的元素数.

array_1和array_2具有任意数量的元素.

[array_1中的元素数] mod [array_2中的元素数] = 0

解决方法

Itertools有大量工具可以解决您的问题

了解你的问题

>其中一个阵列比另一个
>较短的阵列应为cycled,直到较长的阵列耗尽
> Create a pair较长的阵列和循环的较短阵列
> Subtract the elements within the pair

所以这是实施

>>> arr1 = range(1,10)
>>> arr2 = range(20,23)
>>> from operator import sub
>>> from itertools import izip,cycle,starmap
>>> list(starmap(sub,izip(arr1,cycle(arr2))))
[-19,-19,-16,-13,-13]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐