Python-排列组合函数

2023-11-01

product 笛卡尔积  (有放回抽样排列)
permutations 排列  (不放回抽样排列)
combinations 组合,没有重复  (不放回抽样组合)
combinations_with_replacement 组合,有重复  (有放回抽样组合)

import itertools
for i in itertools.product('ABCD', repeat = 2):
    print(i)
# ('A', 'A') ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'A') ('B', 'B') ('B', 'C') ('B', 'D') ('C', 'A') ('C', 'B') ('C', 'C') ('C', 'D') ('D', 'A') ('D', 'B') ('D', 'C') ('D', 'D')

for i in itertools.permutations('ABCD', 2):
    print(i)
# ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'A') ('B', 'C') ('B', 'D') ('C', 'A') ('C', 'B') ('C', 'D') ('D', 'A') ('D', 'B') ('D', 'C')

for i in itertools.combinations('ABCD', 2):
    print(i)
# ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'C') ('B', 'D') ('C', 'D')

for i in itertools.combinations_with_replacement('ABCD', 2):
   print(i)
# ('A', 'A') ('A', 'B') ('A', 'C') ('A', 'D') ('B', 'B') ('B', 'C') ('B', 'D') ('C', 'C') ('C', 'D') ('D', 'D')

还有就是,combinations和permutations返回的是对象地址,原因是在python3里面,返回值已经不再是list,而是iterators(迭代器), 所以想要使用,只用将iterator 转换成list 即可, 还有其他一些函数返回的也是一个对象,需要list转换,比如 list(map())等 。

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

Python-排列组合函数 的相关文章

  • Python Tweepy:Twitter Api 说 /users/lookup 不存在

    我正在制作一个研究应用程序 研究具有高权威的 Twitter 用户之间的交互 其中一部分是提取有关用户的信息 我使用 Tweepy for Python 构建了一个应用程序 过去 2 天我一直在提取用户信息 没有出现任何问题 突然提出这样的
  • 二进制数据的Python字符串表示

    我试图理解 Python 显示表示二进制数据的字符串的方式 这是一个使用的示例乌兰多姆操作系统 http docs python org library os html os urandom In 1 random bytes os ura
  • matplotlib:在次要标签下绘制主要刻度标签

    这看起来应该很容易 但我不知道该怎么做 我有一个 X 轴上有时间的图 我想设置两组刻度 小刻度显示一天中的小时 大刻度显示日 月 所以我这样做 set date ticks to something sensible xax ax get
  • 使用记事本打开文本文件作为python中的帮助文件?

    我想为我的简单程序的用户提供打开帮助文件的机会 以指导他们如何充分利用我的程序 理想情况下 我希望在 GUI 上有一个蓝色的小帮助链接 可以随时单击该链接 从而在本机文本编辑器 例如记事本 中打开 txt 文件 有没有一种简单的方法可以做到
  • 每个刻度标签都有不同的颜色

    我正在尝试使用 matplotlib python 3 5 创建一个散点图 其中 x 轴上的每个刻度都有不同的颜色 这怎么可能 例如 假设 x 刻度为 Mo Tu We Th Fr Sa Su 现在我希望 Mo 是绿色的 Tu 是蓝色的 等
  • 通过 rpy 将 SPSS 文件(.sav)导入 pandas 时如何保留标签?

    我正在寻找使用 SPSS 文件 sav pandas 在没有 SPSS 程序的情况下 典型文件转换为 csv 后的样子如下 在调查前两行的含义时 我不知道 SPSS 似乎第一行包含Labels 而第二行包含VarNames 当我将文件带入
  • 如何创建毫秒粒度的 Python 时间戳?

    我需要一个自纪元以来的毫秒 ms 时间戳 这应该不难 我确信我只是缺少一些方法datetime或类似的东西 实际上微秒 s 粒度也很好 我只需要亚 1 10 秒的计时 例子 我有一个每 750 毫秒发生一次的事件 假设它检查灯是否打开或关闭
  • 如果使用 unicode 字符,则从数据库中进行 SELECT 会出现问题

    我在用着latest带DatabaseLibrary的python和机器人框架版本 https franz see github io Robotframework Database Library api 1 0 1 DatabaseLi
  • 可以memmap pandas系列。数据框怎么样?

    看来我可以通过创建 mmap d ndarray 并使用它来初始化系列来对 python 系列的底层数据进行内存映射 def assert readonly iloc try iloc 0 999 Should be non editabl
  • pybind11:如何将 c++ 和 python 代码打包到一个包中?

    我正在尝试使用 CMake 和 pybind 11 将现有的 Python 代码和新的 C 11 代码打包在一起 我认为我缺少一些可以添加到 CMake 脚本中的简单内容 但在任何地方都找不到它 pybind11 示例只有 C 代码和没有P
  • python matplotlib 使用按钮事件添加和删除图形中的文本

    我试图在调用button press event 时将文本添加到鼠标指针位置的图形中 并在调用button release event 时将其删除 我已成功添加文本 但无法将其删除 这是我使用的代码的一部分 def onclick even
  • 带有redirect_uri的social-auth-app-django Facebook后端状态

    我知道我的问题听起来像是重复的 但我到处寻找但没有找到任何解决方案 我正在努力为我的 django web 应用程序实现社交登录 到目前为止 谷歌 推特和雅虎登录均按预期工作 但facebook总是给出以下错误 URL 被阻止 此重定向失败
  • Django - 该进程无法访问该文件,因为该文件正在被另一个进程使用

    我正在尝试在 Windows 10 上运行 Django 我是 Django 的新手 我正在使用 Compressor Toolkit 我的问题是 我可以运行 manage py 但本地主机说 base html 第 9 行出错该进程无法访
  • 将 Selenium 与 PyCharm CE 结合使用

    我正在尝试将 Selenium 与 PyCharm CE 一起使用 我已经使用 pip install Selenium 安装了 Selenium 并且可以通过终端使用它 但是当我尝试将它与 PyCharm 一起使用时 出现导入错误 Imp
  • Pandas如何将多个函数应用于数据框

    有没有办法像 DataFrameGroupBy agg 函数那样将函数列表应用于 DataFrame 中的每一列 我发现了一个丑陋的方法来做到这一点 df pd DataFrame dict one np random uniform 0
  • Python 用静态图像将 mp3 转换为 mp4

    我有x文件包含一个列表mp3我想转换的文件mp3文件至mp4文件带有static png photo 似乎这里唯一的方法是使用ffmpeg但我不知道如何实现它 我编写了脚本来接受输入mp3文件夹和一个 png photo 然后它将创建新文件
  • 当我移动我的 pygame 角色时,它会留下痕迹[重复]

    这个问题在这里已经有答案了 我一直在尝试用 Python 制作一个游戏 但是当我移动我的角色时 它会留下痕迹 我知道它并没有显示出那么多 但如果你靠近的话 你可以看到这条踪迹 这真的让我很困扰 这是我的代码 import pygame im
  • Pandas 使用什么规则来生成视图和副本?

    我对 Pandas 在决定数据帧中的选择是原始数据帧的副本或原始数据帧的视图时使用的规则感到困惑 例如 如果我有 df pd DataFrame np random randn 8 8 columns list ABCDEFGH index
  • 如何在Python中显示坐标网格线的变换?

    假设我有常规的笛卡尔坐标系 x y 并且我考虑一个矩形网格区域 D 分成小方块 我想看看域 D 如何在 Python 中的坐标变换 T x y gt u x y v x y 下映射 我正在寻找这样的东西 See here https mat
  • 捕获 SQLAlchemy 异常

    我可以使用什么捕获 SQLAlechmy 异常的上层异常 gt gt gt from sqlalchemy import exc gt gt gt dir exc ArgumentError CircularDependencyError

随机推荐

  • 快速理解python中的可迭代对象、迭代器、生成器

    快速学会python中的可迭代对象 迭代器 生成器 今天周一 又要开始新的一周的学习了 加油鸭 多学一点不吃亏哈哈 迭代 什么是迭代 迭代就是将重复的代码进行执行 处理相似的数据集 并且上一个迭代的结果会给到下一次 作为初始化值进行下一次的
  • 利用Jmeter对禅道进行性能测试

    前言 jmeter工具的学习和使用 一 背景 前段时间没事 自己在虚拟机上搭建了一个禅道环境 并在外机上安装jmeter 编写脚本对禅道进行简单的性能测试 二 操作步骤 1 环境搭建 1 1 禅道环境搭建 本地电脑安装VMware Work
  • win11系统23年6月最新anaconda安装教程及配置环境变量

    win11系统23年6月最新anaconda安装教程及配置环境变量 官网下载anaconda 安装anaconda 注意 接下来这一步如果选择Just Me 后续则可选择自动 手动配置环境变量 如果选择ALL Users 则只能手动配置环境
  • 大模型AI:城市规划新的技术转换点

    引言 城市规划作为一项事业长期以来处在这样一种矛盾的境地 一方面干预的对象几乎是世界上最复杂的系统 城市系统 而另一方面城市规划和公共政策的强绑定属性 以及处在技术应用下游的定位使得行业并不对技术敏感 这就导致从业者往往采用传统的方法来解决
  • 复习-单项链表

    SList h pragma once typedef int SDataType typedef struct SListNode SDataType data struct SListNode PNext Node PNode 链表的结
  • 误删/usr/lib/x86_64-linux-gnu动态库文件修复

    问题 在阿里云上部署区块链时 因为缺少一些动态库 想偷懒从另外一个服务器上直接copy动态库 usr lib x86 64 linux gnu 结果先删除本地的 usr lib x86 64 linux gnu 结果造成好多命令用不了 例如
  • 为什么祖传代码被称为「屎山」?这个回答简直太形象了

    经常听说祖传代码会被人称之为 屎山 不同人可能有不同的体会 最近看到一个回答 简直是把这个阐述得 活灵活现 大家来感受下吧 阅读本文大概需要 3 分钟 作者 Avalon 原文链接 https www zhihu com question
  • win10时间 服务器未响应,win10系统程序未响应的解决方法

    win10系统想必大家都非常熟悉吧 然而有时候可能会碰到win10系统win10系统程序未响应的问题 比如近日有用户到本站反映说win10系统程序未响应的问题 该怎么处理win10系统程序未响应的问题呢 我们按照 1 在win10桌面右下角
  • 【二十六】springboot实现多线程事务处理

    springboot篇章整体栏目 一 springboot整合swagger 超详细 二 springboot整合swagger 自定义 超详细 三 springboot整合token 超详细 四 springboot整合mybatis p
  • Java之 jdbc 工具类

    继学习简单的jdbc之后发现会有很多重复的代码 所以要抽离出来制作出一个jdbc工具类 并且要有一个properties文件更改jdbc的一些配置 首先由一个配置文件 jdbc properties driver com mysql jdb
  • SQL语句中查找字符的位置

    语法如下 instr string1 string2 start position nth appearance string1 源字符串 要在此字符串中查找 string2 要在string1中查找的字符串 start position
  • Internet Explorer (IE) 模式疑难解答和常见问题解答

    备注 11 Internet Explorer 11 桌面应用程序将于 2022 年 6 月 15 日停用并停用支持 To see the list of what s in scope see the Internet Explorer
  • CentOS7安装nginx

    安装yum utils yum install y yum utils 配置nginx repo vi etc yum repos d nginx repo并填入 nginx stable name nginx stable repo ba
  • 多项式求和(C语言)

    Problem Description 多项式的描述如下 1 1 2 1 3 1 4 1 5 1 6 现在请你求出该多项式的前n项的和 Input 输入数据由2行组成 首先是一个正整数m m lt 100 表示测试实例的个数 第二行包含m个
  • 报错:A complete log of this run can be found

    报错 npm ERR Cannot read property parent of null npm ERR A complete log of this run can be found in npm ERR C Users Aren A
  • python在文件末尾写入_python中 对文件的读写操作 以及如何边写入 边保存flush()...

    首先 python中打开文件大致常用的几类如下 1 写入文件write 这种写入方式会将原文本删除 重新写入 File open test txt w 2 读取文件read File open test txt a 3 添加写入 这种写入是
  • 高等代数 多项式环(第7章)1 一元多项式环,整除关系,带余除法

    一 一元多项式环 7 1 1 一元多项式 1 一元多项式的定义 2 一元多项式的次数 3 一元多项式的运算 另外 可以证明 K x K x K x 是数域
  • mfc c++ 多线程AfxBeginThread 例子( 一)

    AfxBeginThread 为用户界面线程 该函数的原型为 CWinThread AfxBeginThread AFX THREADPROC pfnThreadProc 线程函数地址 即线程函数的入口 LPVOID pParam 线程参数
  • python requests 由于目标计算机积极拒绝,无法连接

    前言 今天写了个python爬虫 开始运行的好好的 突然报错 requests exceptions ProxyError HTTPConnectionPool host 127 0 0 1 port 8888 Max retries ex
  • Python-排列组合函数

    product 笛卡尔积 有放回抽样排列 permutations 排列 不放回抽样排列 combinations 组合 没有重复 不放回抽样组合 combinations with replacement 组合 有重复 有放回抽样组合 i