您要使用^{}:In [1]: import itertools as it

In [2]: mainlist = ['one', 'two', 'three', 'four', 'five']

In [3]: for a,b in it.combinations(mainlist, 2):

...: print(a, b)

...:

one two

one three

one four

one five

two three

two four

two five

three four

three five

four five

以同样的方式,您还可以通过指定3作为第二个参数,从同一个创建所有可能的三元组:

^{pr2}$

如果您还想生成one one、two two等对,那么应该使用^{}。在

如果要用相同的第一个元素将对组合在一起,可以使用^{}:In [1]: import itertools as it

...: mainlist = ['one', 'two', 'three', 'four', 'five']

...:

In [2]: for key, group in it.groupby(it.combinations(mainlist, 2), key=lambda x:x[0]):

...: print('key is', key)

...: print('grouped elements', list(group))

key is one

grouped elements [('one', 'two'), ('one', 'three'), ('one', 'four'), ('one', 'five')]

key is two

grouped elements [('two', 'three'), ('two', 'four'), ('two', 'five')]

key is three

grouped elements [('three', 'four'), ('three', 'five')]

key is four

grouped elements [('four', 'five')]

最后,如果要显式地编写循环,可以使用enumerate跟踪当前索引:In [3]: for i, el in enumerate(mainlist):

...: for el2 in mainlist[i+1:]:

...: print(el, el2)

...:

one two

one three

one four

one five

two three

two four

two five

three four

three five

four five

这基本上就是combinations所做的,除了它可以处理任意大小(成对、三元组等)

python反转排列_生成列表元素对的每个排列,而不重复或反转对相关推荐

  1. Python 实例教学_ 03_列表

    Python 实例教程 Python 实例教学_ 03_列表 第十三课 [844. 比较含退格的字符串](https://leetcode.cn/problems/backspace-string-c ...

  2. python 用双引号打印列表元素

    python 用双引号打印列表元素 需求描述: 将一个列表['SA41','SA42','SA43','SA44','SA45','SA46','SA47']每个元素使用双引号打印. 解决方案: 使用 ...

  3. python数字大小排列_python按照列表元素中的数字大小排序

    [Human Sorting] 常见的python排序只需要一个sort或者sorted函数即可.但是默认采用的是字典序,这会带来一个问题,如果列表中的元素是字符串+数字组合,往往无法得到我们想要的排 ...

  4. python列表元素求和_如何在python语言使用不同方法实现列表元素求和

    在使用python语言列表时,如果列表中的元素都是数值类型,可以对元素进行求和.下面利用不同的方法实现列表元素求和: 工具/原料 python pycharm 截图工具 方法/步骤 1 第一步,在已创 ...

  5. Python学习-----起步4(列表元素的添加,删除,修改,查询,获取长度)

    目录 前言: 列表元素的添加(或者叫写入) 1.append()函数 2.extend()函数 3.insert()函数 列表元素的删除 1.remove() 函数 2. pop() 函数 3.cle ...

  6. python数字排序_python按照列表元素中的数字大小排序

    [Human Sorting] 常见的python排序只需要一个sort或者sorted函数即可.但是默认采用的是字典序,这会带来一个问题,如果列表中的元素是字符串+数字组合,往往无法得到我们想要的排 ...

  7. python制作海报_生成海报(前端 | python)

    我最近没有摸鱼,一直都在工作.只不过目前需要爬一点数据 python 做的,之后看机会分享一下. 忙着忙着老大说要生成海报,有个活动要给每个用户来个分享图. 想法 PS 批处理?脚本? 能甩出去的活都 ...

  8. python创建网页_生成HTML页面的Python模块 PyH

    PyH 是一个用来生成HTML页面的Python模块,使用面向对象的方式,HTML的标签都会对应一个Python的对象,输出的HTML文档排版良好,易于阅读. 示例代码: from pyh impor ...

  9. python chm制作_生成chm文档的方法

    一个类和hhc.exe还有hha.dll 用于生成包含html目录的chm项目文件 ,然后通过hhp项目文件和内容文件生成 .chm手册. /* 函数 listDirTree( $dirName =  ...

最新文章

  1. 方差分析的MATLAB实现(单因子)
  2. 排队问题解题思路_1120各数的认识解决问题
  3. 第5月第8天 jsonmodel
  4. Send mail via http client - CL_SAM_SESSION_QUEUE_SENDER
  5. 图像坐标:我想和世界坐标谈谈(A) 【计算机视觉学习笔记--双目视觉几何框架系列】
  6. 中国大学MOOC-陈越、何钦铭-数据结构-2019春期末考试(题目+部分解答)
  7. spring整合cxf开发rest风格的webservice接口(客户端服务端)
  8. ARM64体系结构与编程之cache必修课(上)
  9. 算法学习之路|反转链表
  10. 会声会影2020迅雷磁力链接bt搜索种子百度云网盘下载及有效序列号
  11. 乐理:十二平均律与大小调
  12. 恒指赵鑫:8.9恒指德指实盘指导记录总结与晚盘前瞻
  13. 从 Google 离职了!
  14. 字符串(蓝桥杯模拟赛)
  15. matlab 7y30,屏幕及音响表现出众_华硕 灵焕3(M3 7Y30/8GB/256GB)_笔记本评测-中关村在线...
  16. php正则抓取网页指定内容,php正则匹配获取指定url网页页面超级链接地址与抓取指定页面内容方法...
  17. Java核心技术 卷1 基础知识 学习笔记——第三章 java的基本程序设计结构
  18. Review of Software Construction
  19. XILINX GTX学习笔记
  20. Canal-adapter的简单配置

热门文章

  1. 设置透明色有残留怎么办_冬天车玻璃结冰,车被冻住了怎么办?据说只有10%的人做对了...
  2. 牛客寒假算法基础训练营3
  3. 中文信息处理(三)—— 词性标注
  4. Pycharm(windows)设置中文菜单
  5. Bash命令的学习笔记(legacy)
  6. dpkg: error processing package oracle-java8-installer (--configure):
  7. [贪心算法] 例6.2 今年暑假不AC
  8. Java交替打印两个字符串
  9. [译]为什么Vue不支持templateURL
  10. 敏捷开发一千零一问系列之十一:需求谁做主?