[英]Addition of two sets... How to proceed
考慮兩個集合:- {9,87} 和 {1,2,3,45}。 在這里,我不是指聯合,而是加法,它將產生 output 作為兩個元素組合的所有可能添加,這樣每個元素都來自不同的集合。
所以我應該得到的答案是:- {9+1,9+2,9+3,9+45,87+1,87+2,87+3,87+45}
我如何才能在連續空間中進行這種獨特的兩組相加? 我嘗試了兩個圓圈,發現表達非常困難......
set3 = set()
for item1 in set1:
for item2 in set2:
set3.add(item1+item2)
itertools.product
可以幫助生成所需的集合。 member1
是來自set1
的元素,而member2
是來自set2
的元素。 itertools.product
產生兩個集合的笛卡爾積——具體來說,所有可能的元組,其中第一個元素是set1
的成員,第二個元素是set2
的成員。
import itertools
set1 = {9,87}
set2 = {1,2,3,45}
print({member1 + member2 for member1, member2 in itertools.product(set1, set2)})
您可以使用集合理解來實現這一點
x = {9,87}
y = {1,2,3,45}
z = {i+j for i in x for j in y}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.