笛卡爾乘積定義及python中的使用示例

2021-08-17 23:47:40 字數 983 閱讀 3154

笛卡爾(descartes)乘積又叫直積。設a和b是兩個集合,a到b的笛卡爾積用a×b表示,它是所有形如(a,b)的有序對作為元素的組合,其中a∈a,b∈b。笛卡爾積的符號化為:a×b=

例:假設集合a=a,b,集合b=0,1,2,則兩個集合的笛卡爾積為(a,0),(a,1),(a,2),(b,0),(b,1), (b,2)。

1、資料庫

盜一張圖,很容易理解

2、做業務邏輯、訓練資料等很多場景例如:

from itertools import product

for x, y, z in product(['漂亮', '好看', '高大上'], ['黑色', '粉色', '金色'], ['手機', '皮包']):

print x, y, z

語料就這麼easy的生成了

漂亮 黑色 手機

漂亮 黑色 皮包

漂亮 粉色 手機

漂亮 粉色 皮包

漂亮 金色 手機

漂亮 金色 皮包

好看 黑色 手機

好看 黑色 皮包

好看 粉色 手機

好看 粉色 皮包

好看 金色 手機

好看 金色 皮包

高大上 黑色 手機

高大上 黑色 皮包

高大上 粉色 手機

高大上 粉色 皮包

高大上 金色 手機

高大上 金色 皮包

python中的笛卡爾乘積

在領扣刷題的過程中遇到需要使用笛卡爾積的解法,因為使用的是python3版本解決,所以在python版本中提供了乙個庫函式可以模擬笛卡爾乘積的元素組成過程 itertools.product,一般來說比較常使用的是在product方法中傳遞進a與b兩個可迭代的物件進行組合,官方提供的解釋如下 pro...

笛卡爾乘積

笛卡爾 descartes 乘積又叫直積。假設集合a 集合b 則兩個集合的笛卡爾積為。可以擴充套件到多個集合的情況。類似的例子有,如果a表示某學校學生的集合,b表示該學校所有課程的集合,則a與b的笛卡爾積表示所有可能的選課情況。目錄名稱定義 序偶定義 笛卡爾積定義 推導過程 案例 序偶與笛卡爾積 定...

Python實現求笛卡爾乘積的方法

在數學中,兩個集合x和y的笛卡尓乘積 cartesian product 又稱直積,表示為x y,第乙個物件是x的成員而第二個物件是y的所有可能有序對的其中乙個成員。假設集合a 集合b 則兩個集合的笛卡爾積為。有時我們需要在python求兩個list的笛卡爾乘積,其實很簡單,一行 搞定。例如,求a ...