Skip to main content
 首页 » 编程设计

Python之来自文件的行之所有组合

2025年05月04日19haluo1

我有两个文件 - prefix.txt 和 terms.txt 都有大约 100 行。我想用笛卡尔积写出第三个文件

http://en.wikipedia.org/wiki/Join_(SQL)#Cross_join

-大约 10000 行。

在 Python 中处理此问题的最佳方法是什么?

其次,有没有办法把这10000行随机写入第三个文件?

请您参考如下方法:

你需要 itertools.product。

for prefix, term in itertools.product(open('prefix.txt'), open('terms.txt')): 
    print(prefix.strip() + term.strip()) 

打印出来,或者积累起来,或者直接写出来。你需要 .strip() 因为它们每个都有换行符。

之后,您可以使用 random.shuffle(list(open('thirdfile.txt')) 对它们进行随机播放,但我不知道在您使用的大小的文件上播放速度有多快。