如何将 itertools.product 应用于列表列表的元素? [复制]

2023-12-30

我有一个数组列表,我想获得数组中元素的笛卡尔积。

我将用一个例子来使这一点更加具体......

itertools.product 似乎可以解决问题,但我陷入了一些细节。

arrays = [(-1,+1), (-2,+2), (-3,+3)];

If I do

cp = list(itertools.product(arrays));

I get

cp = cp0 = [((-1, 1),), ((-2, 2),), ((-3, 3),)]

但我想要得到的是

cp1 = [(-1,-2,-3), (-1,-2,+3), (-1,+2,-3), (-1,+2,+3), ..., (+1,+2,-3), (+1,+2,+3)].

我尝试了一些不同的事情:

cp = list(itertools.product(itertools.islice(arrays, len(arrays))));
cp = list(itertools.product(iter(arrays, len(arrays))));

他们都给了我cp0代替cp1.

有任何想法吗?

提前致谢。


>>> list(itertools.product(*arrays))
[(-1, -2, -3), (-1, -2, 3), (-1, 2, -3), (-1, 2, 3), (1, -2, -3), (1, -2, 3), (1, 2, -3), (1, 2, 3)]

这会将所有对作为单独的参数提供给product,然后将为您提供它们的笛卡尔积。

您的版本无法正常工作的原因是您正在提供product只有一个论点。要求一个列表的笛卡尔积是一种简单的情况,并返回一个仅包含一个元素的列表(作为参数给出的列表)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 itertools.product 应用于列表列表的元素? [复制] 的相关文章

随机推荐

  • 在 docker 环境中 pip install git+url

    我正在使用这个 Docker 来自lambda lambda python3 6 并且我需要安装一个私有存储库包 问题是 Docker 没有 git 我无法使用 apt get 或 apk install 安装 git 因为 Docker
  • Android - 以编程方式制作的 EditText 不显示键盘

    我正在制作一个应用程序 我正在使用ArrayAdapter
  • 如何获取 wkhtmltopdf 正文中的总页数?

    是否可以访问主要内容主体中的 topage 变量 我知道您可以在页眉和页脚中执行此操作 但在这个特定用例中 我需要在正文中添加一句话 本文档包含 XX 页 这对我有用 但需要位于页眉 ou 页脚 在体内我认为这是不可能的 就像他们在 Git
  • d3 用逗号替换分号

    希望比我聪明的人能够快速帮助解决这个问题 我有带有分号分隔符的 csv 文件 它无法读取标题 d3 csv file csv function error data data forEach function d d date parseD
  • 将 Jar 添加到独立的 pyspark

    我正在启动一个 pyspark 程序 export SPARK HOME export PYTHONPATH SPARK HOME python SPARK HOME python lib py4j 0 9 src zip python 和
  • C++ 中的动态数组 VS 链表[重复]

    这个问题在这里已经有答案了 当我们有动态数组列表时 为什么还需要链表 我研究过静态列表和链表 我了解动态数组列表 但我无法找出两者之间的确切区别 有人请帮我回答这个问题 动态数组是一种根据内容数量向上或向下调整自身大小的数组 优势 通过索引
  • 如何编写匹配嵌套括号的递归正则表达式?

    我正在尝试编写一个与嵌套括号匹配的正则表达式 例如 text text text text casual characters 像这样的字符串应该被匹配 因为所有嵌套的括号都被关闭 而不是 text text casualChars 不应该
  • JQuery 添加/删除类 onClick

    单击时打开子菜单 下次单击时关闭 这就是我想要实现的目标 例子是这一页 http jquery plugins net page 6 关注 链接下的子菜单 它打开子菜单 添加 打开 类 但不关闭 卡住 my html ul li a hre
  • Python:使用 shell=False 的子进程调用不起作用

    我正在使用 Python 脚本来调用 Java 虚拟机 以下命令有效 subprocess call rvm shell False works subprocess call rvm xyz shell True works But su
  • 资源上的权限“artifactregistry.repositories.downloadArtifacts”被拒绝

    虽然工件存储库已成功创建 但即使向我在 gcloud cli 上使用的会计授予所有工件权限后 运行 docker Push 将图像推送到 google 工件注册表也会失败并出现权限错误 推送图片的命令 docker push us cent
  • Git 子树工作流程

    在我当前的项目中 我正在使用一个开源论坛 https github com vanillaforums Garden https github com vanillaforums Garden 我本来打算做这样的事情 git remote
  • 为什么 HAXM 配置内存太低“969 MB”?它与需要 1 GB RAM 的 AVD API 级别 23 不兼容

    这是显示的错误消息安卓工作室1 4 console emulator WARNING Increasing RAM size to 1GB emulator device fd 560 HAXM is not working and emu
  • MpAndroidChart - 如何填充组合图表上两条线之间的区域?

    This answer https stackoverflow com a 43452404类似的问题显示了如何填充 MpAndroidChart 上两行之间的区域折线图 但是 我没有使用 LineChart 而是使用组合图 因为我还有条形
  • 如何使我的猫头鹰旋转木马方向跟随鼠标滚轮方向

    当我滚动鼠标滚轮时 它会移动 但是当我更改滚动方向时 它不会改变其方向 如何使猫头鹰旋转木马方向跟随鼠标滚轮方向 当我滚动鼠标滚轮时 它会移动 但是当我更改滚动方向时 它不会改变其方向 如何使猫头鹰旋转木马方向跟随鼠标滚轮方向 var ow
  • 完成处理程序闭包是否始终在后台线程中运行?

    完成处理程序闭包在 iOS 开发中很常见 例如dataTask with completionHandler in the URL会话 class UI 引擎由主线程管理 URLSession 的 API 调用在后台线程下运行 如果处理程序
  • 是否可以像旧的 G+/Picasa API 一样,仅使用电子邮件来获取个人的公开个人资料照片?

    背景 在过去和不久的将来 根据一个人的电子邮件 可以获取个人资料照片 如下所示 检索用户的公开 google gmail 图片 https stackoverflow com q 25606322 878126 甚至无需登录G 网络也是可以
  • 在restify中不调用next()的后果

    我已经使用 Restify 一段时间了 我遇到了一些缺少的代码next 我突然意识到我不确定我是否完全理解其中的原因why next 应该在之后调用res send 我明白为什么会在中间件情况下使用它 但是对于正常的路由为什么需要它 例如
  • 让 VHost 使用 EasyPHP

    因此 我一直在尝试使用 EasyPHP Devserver 16 1 在新的 Windows 10 安装上设置虚拟主机 我修改了 etc vhosts 以包含我的新域 mysite local 它可以工作 但仍然指向默认的 easyphp
  • Angular 2 标头和数据

    在 Angular 2 中 有人可以向我展示一个从 JSON api feed 获取标头和数据的基本示例吗 我可以看到很多有关如何仅获取数据的示例 但没有看到获取标题的示例 请您向我展示组件中的代码和服务中的代码吗 那么 标头应该位于响应数
  • 如何将 itertools.product 应用于列表列表的元素? [复制]

    这个问题在这里已经有答案了 我有一个数组列表 我想获得数组中元素的笛卡尔积 我将用一个例子来使这一点更加具体 itertools product 似乎可以解决问题 但我陷入了一些细节 arrays 1 1 2 2 3 3 If I do c