python - 生成多个字符串组合
问题描述
我有一个 n 个字母的列表作为字符串,例如:
input: ["A", "B", "C", "D"]
我需要做的是创建具有给定长度的这些字母的所有可能组合,例如,如果:
L = 2
output: ["A", "B"], ["A", "C"], ["A", "D"], ["B", "C"], ["B", "D"], ["C", "D"]
L = 3
output: ["A", "B", "C"], ["A", "B", "D"], ["A", "C", "D"], ["B", "C", "D"]
解决方案
这是您在itertools中可用的标准组合:
import itertools
characters = "ABCD"
print(list(itertools.combinations(characters, 2)))
print(list(itertools.combinations(characters, 3)))
您会发现其他有用的函数可用于在 itertools 中进行迭代,例如排列。
推荐阅读
- javascript - Javascript如何按值从URL字符串中删除参数?
- ajax - 如何在 JavaScript 中对结果进行排序
- c - 有人可以解释如何评估这个 C 代码片段 wrt 序列点吗?
- php - How to post a button's value in html form (PHP)
- python - 避免影响条件的二进制舍入错误的最佳方法是什么?
- php - 在发送 PHP Mailer 电子邮件之前验证字段
- java - 无法在 Android Studio 中创建测试文件夹
- android - 如何在Android中使用模态制作搜索视图
- excel - Openoffice.org Calc - 为变量赋值
- ios - 使用 ArcGis Api 在 iOS 上加载 pdf 地图