簡體   English   中英

如何將3個txt文件合並在一起

[英]How could I combine 3 txt file together

我制作了3個文本文件,其中包含1或2個句子。

我知道如何在txt文件中讀取行並將其完全合並。

我不知道如何組合所有句子。

例如)如果句子是A,B,C

結果可能是ABC或ACB或CBA或BCA ...

我有10個句子,想隨機組合其中6個。

def output() :          
     infile=open("file.txt","r")
     outfile=open("outputone.txt","w")

     line= open('outputa1.txt').readlines()
     line=''.join(line)
     outfile.write("\n")

def output1() :

     line= open('outputa2.txt').readlines()
     line=''.join(line)
     outfile.write(line)
     outfile.write("\n")

def output2() :

     line= open('outputa3.txt').readlines()
     line=''.join(line)
     outfile.write(line)
     outfile.write("\n")

     infile.close()
     outfile.close()

output()
output1()
output2()

這些是我的代碼,如果您有任何想法請幫助我!

我不知道您為什么要為選擇6條隨機線而排列這些線。 我認為排列是指改組。 10行的排列會給您3628800行的組合。 因此,我提供了一種從10行中隨機選擇6行並將其寫入文件的解決方案。

outputa1.txt:

  1. 這是文件1
  2. 這是foo
  3. 這是文件1的結尾

outputa2.txt

  1. 這是文件2
  2. 這是酒吧
  3. 這是文件2的結尾

outputa3.tx

  1. 這是文件3
  2. 這是巴茲
  3. 文件3到此結束
  4. 就這樣

現在,這三個文件合起來將有10行。

import random
combined_lines = []
f = open('outputa1.txt','r')
for line in f:
    combined_lines.append(line+'\n')
f.close()
f = open('outputa2.txt','r')
for line in f:
    combined_lines.append(line+'\n')
f.close()
f = open('outputa3.txt','r')
for line in f:
    combined_lines.append(line+'\n')
f.close()
#To choose randomly 6 lines from the file
random.shuffle(combined_lines)
f = open('outputa.txt','x')
f.writelines(combined_lines[:6])
f.close()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM