Python实现求笛卡尔乘积的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python实现求笛卡尔乘积的方法。分享给大家供大家参考,具体如下:

在数学中,两个集合X和Y的笛卡尓乘积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0), (a,1), (a,2), (b,0), (b,1), (b, 2)}。有时我们需要在python求两个list的笛卡尔乘积,其实很简单,一行代码搞定。

例如,求a={1,2,3}与b={0,1,2}的笛卡尔乘积,与a={1,2,3}自身的笛卡尔乘积,python代码如下:

#-*-coding:utf-8-*-
import itertools;
a=[1,2,3];
b=[4,5,6];
print "a,b的笛卡尔乘积:",
for x in itertools.product(a,b):
  print x,
print;
print "a自身的笛卡尔乘积:",
for x in itertools.product(a,a):
  print x,

运行结果如下:

值得注意的是,这里的itertools并不是什么我自己引入的工具,是一个python的标准库,直接引入就可以使用了。

就像C语言的<math.h>头文件一个道理。

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python画图实现同一结点多个柱状图的示例

Python画图实现同一结点多个柱状图的示例

如下所示: import numpy as np x = [1,2] #横坐标 y = [3,4] #第一个纵坐标 y1 = [5,6] #第二个纵坐标 x = np.aran...

python字符串替换示例

php5.2升级到5.3后,原& new的写法已经被放弃了,可以直接new了,面对上百个php文件,手动修改简直是想要命,所以写了个脚本,分分钟搞定。 复制代码 代码如下:#-*- co...

Python django实现简单的邮件系统发送邮件功能

Python django实现简单的邮件系统发送邮件功能

本文实例讲述了Python django实现简单的邮件系统发送邮件功能。分享给大家供大家参考,具体如下: django邮件系统 Django发送邮件官方中文文档 总结如下: 1、首先这份...

Python将阿拉伯数字转换为罗马数字的方法

本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法。分享给大家供大家参考。具体实现方法如下: def numToRomanNum(Num): """digital will...

多个应用共存的Django配置方法

多个应用共存的Django配置方法

1.配置环境 安装python3 安装python3-pip 通过pip安装Django **如果需要使用Jinja模板,需要通过pip安装django-jinja与jinja2**...