python - python如何进行顺序组合
问题描述
我有个问题。我已经尝试过如下示例。
import itertools
options = ['A', 'B', 'C']
true_or_false = ['true', 'false']
result1 = [f"{option} is " for option in options]
结果如下。
print(result1)
['A is ', 'B is ', 'C is ']
我想使用“true_or_false”来产生这样的结果2。
('A is true' 'B is true' 'C is true')
('A is true' 'B is true' 'C is false')
('A is true' 'B is false' 'C is true')
('A is true' 'B is false' 'C is false')
('A is false' 'B is true' 'C is true')
('A is false' 'B is true' 'C is false')
('A is false' 'B is false' 'C is true')
('A is false' 'B is false' 'C is false')
我认为它正在使用“组合”,但它不起作用。
解决方案
简单的嵌套循环可以输出你所需要的
result2 = []
true_or_false = ['true','false']
for a in true_or_false:
for b in true_or_false:
for c in true_or_false:
result2.append(('A is ' + a, 'B is ' + b, 'C is ' + c))
并且result2
将是一个元组列表:
[('A is true', 'B is true', 'C is true'),
('A is true', 'B is true', 'C is false'),
('A is true', 'B is false', 'C is true'),
('A is true', 'B is false', 'C is false'),
('A is false', 'B is true', 'C is true'),
('A is false', 'B is true', 'C is false'),
('A is false', 'B is false', 'C is true'),
('A is false', 'B is false', 'C is false')]
推荐阅读
- c# - 如何在 Windows 窗体 C# 中一次将两个文件发布到 API
- javascript - XSS 黑名单/白名单
- grafana - 无法在 Grafana 4.5.2 中管道模板变量
- reporting-services - 将参数传递给报告 URL - power bi 服务中的 ssrs 报告
- javascript - javascript中的最大堆?
- c# - C# 中的毫秒数 - long 还是 int?
- node.js - 如何使用“限制为 1 个响应”提交 Google 表单并绕过登录?
- ckeditor - CKeditor 在嵌入 twitter/instagram 时删除某些部分
- javascript - 如何制作单个工作表的副本并将其保存到谷歌工作表中的文件夹
- c# - 检测我是否点击了文本的某个部分