所以我有一个包含大量.txt文件的文件夹。我知道每个文件中的行数,我将它们放在一个数组中。我想要做的只是将具有一定行数的.txt文件传输到单独的文件夹中,或者删除与相同行数不匹配的其余文件。 描述此文件夹中每个.txt文件中有多少行的数组如下所示:
[1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 7, 3, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 143, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 3, 2, 1, 3, 3, 1, 2, 1, 1, 14, 2, 1, 1, 80, 3, 3, 1, 1, 1, 2, 1, 2, 2, 2, 1, 1, 1, 2, 1, 1, 1, 1, 3, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 80, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 21, 1, 3, 2, 3, 1, 6, 1, 1, 1, 2, 5, 1, 1, 2, 1, 2, 2, 1, 1, 3, 1, 3, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 3, 4, 2, 4, 1, 1, 1, 1, 1, 2, 1, 3, 1, 1, 1, 2, 2, 143, 1, 1, 2, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 140, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 5, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 191, 2, 1, 1, 1, 1, 2, 2, 1, 1, 143, 1, 1, 21, 2, 1, 1, 1, 3, 173, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 3, 2, 1, 3, 2, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 3, 5, 2, 3, 2, 1, 1, 1, 10, 1, 1, 2, 1, 2, 1, 4, 2, 1, 1, 3, 2, 1, 1, 187, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 191, 1, 1, 191, 2, 2, 1, 1, 1, 1, 3, 2, 1, 1, 1, 1, 5, 1, 1, 1, 1, 2, 2, 1, 1, 2, 111, 1, 1, 1, 1, 5, 2, 175, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 2, 1, 1, 1, 2, 2, 1, 1, 1, 2, 191, 1, 1, 1, 1, 2, 2, 3, 2, 1, 1, 2, 1, 2, 3, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 2, 3, 1, 1, 2, 2, 1, 1, 1, 1, 3, 6, 1, 1, 3, 2, 1, 3, 1, 1, 1, 1, 1, 1, 2, 3, 2, 2, 9, 16, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 3, 2, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 1, 1, 1, 190, 2, 1, 1, 1, 1, 4]
我想要做的是将所有包含191行的.txt文件分开并将它们放在一个单独的文件夹中,或者删除在同一文件夹中没有191行的其余文件。请帮忙!!!!谢谢!
我通过执行以下操作得到了这个数组顺序:
>>> import os
>>> dir = '/'
>>> os.chdir(dir)
>>> ch1 = []
>>> for file in glob.glob('*'):
f = open(file, "rU")
f1 = f.readlines()
new = len(f1[0].split(']['))
ch1.append(new)
>>> ch1
这就是我的数组,它告诉我目录中每个文本文件中有多少行。
答案 0 :(得分:0)
DESTPATH = "dest/i/nation/path/goes/here"
TARGET_LINES = 191
for filename in os.listdir():
count = 0
with open(filename) as file:
for line in file:
count += 1
if count == TARGET_LINES:
shutil.move(filename,DESTPATH)