Есть ли способ создать функцию для загрузки всех файлов данных в каталоге, а затем вывести их имена и содержимое?
Ввод: Получить все файлы в заданном моем каталоге(wow.txt, testting.txt и т. д.)
Процесс: Я хочу запустить все файлы с помощью функции
Вывод: Я хочу, чтобы на выходе было указано общее количество обработанных файлов и все имена файлов и их соответствующее содержимое под ним.
Например:
Total Number of Documents: 6
/home/file/wow.txt
"all of its content"
/home/file/www.txt
"all of its content"
Вот мой код:
#Import Functions
import glob
# get all the .txt files
files=glob.glob("*.txt")
#Load Data Function
def load_data(files):
"""
Input : path to all .txt files
Purpose: loading all text file
Output : list of documents along with their respective content
"""
documents_list=[]
content=[]
for file in files:
with open(file,"rt",encoding="latin-1") as fin:
print(file)
for line in fin.readlines():
text = line.strip()
documents_list.append(text)
print("Total Number of Documents:",len(documents_list))
content.append( text[0:min(len(text),100)])
return documents_list,content
#Output
load_data(files)
Вот мой вывод:
![enter image description here](https://i.stack.imgur.com/igDdN.png)
![enter image description here](https://i.stack.imgur.com/SPzaC.png)
Как вы можете видеть в первой части вывода, он показывает каждый файл и случайное число.Вместо этого у него должно быть только общее количество документов (которое равно 5)
Показывает содержимое всех файлов, но не разделяет их по файлам.Как вы можете видеть по красной линии, которая показывает конец первого файла, а под красной строкой - начало другого.
Есть предложения?