#python-3.x #file
#python-3.x #файл
Вопрос:
Я немного запутался в том, как читать все строки во многих файлах, где имена файлов имеют формат от «datalog.txt.98» до «datalog.txt.120».
Это мой код:
import json
file = "datalog.txt."
i = 97
for line in file:
i =1
f = open (line str (i),'r')
for row in f:
print (row)
Здесь вы найдете пример одной строки в одном из этих файлов:
Мне действительно нужна ваша помощь
Комментарии:
1. Не могли бы вы помочь мне прочитать все строки во всех файлах, которые не имеют формата?
2. Ваши файлы представляют собой файлы JSON. Вам лучше использовать программу чтения JSON из одноименного модуля.
Ответ №1:
Я предлагаю использовать цикл для открытия нескольких файлов с разными форматами.
Чтобы лучше понять этот проект, я бы рекомендовал изучить следующие темы
- для циклов,
- Манипулирование строками,
- Открытие файла и чтение его содержимого,
- Управление списком,
- Синтаксический анализ строк.
Это одно из моих любимых руководств для начинающих.
Чтобы задать параметры целых чисел в конце имени файла, я бы заглянул в python для циклов.
Я думаю, это то, что вы пытаетесь сделать
# create a list to store all your file content
files_content = []
# the prefix is of type string
filename_prefix = "datalog.txt."
# loop from 0 to 13
for i in range(0,14):
# make the filename variable with the prefix and
# the integer i which you need to convert to a string type
filename = filename_prefix str(i)
# open the file read all the lines to a variable
with open(filename) as f:
content = f.readlines()
# append the file content to the files_content list
files_content.append(content)
Чтобы избавиться от пробелов при разборе файла, добавьте недостающую строку
content = [x.strip() for x in content]
files_content.append(content)
Вот пример распечатки files_content
for file in files_content:
print(file)
Комментарии:
1. Я получил этот файл с ошибкой «<ipython-input-58-772d29536543>», строка 15 с открытым (именем файла) как f: ^ IndentationError: неожиданный отступ
2. Я пытаюсь прочитать все файлы, которые имеют форматы от «datalog.txt.98» до «datalog.txt.120»
3. Я рекомендую изучить основы python для решения этой проблемы. Если бы я дал вам ответ, который мог бы помочь вам в краткосрочной перспективе, но было бы более полезно разобраться в этом самостоятельно.