【发布时间】:2021-02-11 01:24:28
【问题描述】:
这是我第一次使用 python。我有 4 个 .txt 文件,其中包含单词“圆形”、“方形”、“点”和“点”的潜在字典变体。例如,
circle
circlE
circl3
..
square
squarE
squar3
..
dot
doT
d0t
..
point
poinT
po1nt
我正在尝试创建另一个 .txt 文件,其中包含这 4 个文件中每一行的所有可能组合。我有以下代码可以成功创建所有组合:
import fileinput
from itertools import combinations
from contextlib import closing
with closing(fileinput.input(['circle.txt', 'square.txt', 'dot.txt', 'point.txt'])) as f:
for w, x, y, z in combinations(f, 4):
t = open("circlesquaredotpoint.txt", "a")
t.write('{}{}{}{}'.format(w.rstrip('\n'), x.rstrip('\n'), y.rstrip('\n'), z.rstrip('\n'))+'\n')
t.close()
但它太大了,因为它正在组合来自同一个文件的元素。以下是前几个结果:
circlecirclEcircl3circLe
circlecirclEcircl3circLE
circlecirclEcircl3circL3
我想从同一文件中排除任何行组合,以免重复术语。
【问题讨论】:
标签: python file-io combinations itertools