Как получить значение в файле с форматом вкладки с помощью Python?

#python #string #file #object

#питон #строка #файл #объект

Вопрос:

У меня есть файл в этом формате:

 FileConfig ; ; Version: 4.0.0 ; Date="2021/11/19" ; Name  James Number  1091125 Identifier  STDNT Byte  7687aBap ID  22SSWA Program  *Internal  External  

Я хочу получить значение строки , например Name , Number и т. Д. Я пробовал этот способ, но мне удалось получить только всю строку. Есть ли какой-либо способ получить конкретное значение, инициализировав » Имя » или Number .

 file1 = open("myfile.log", "r") print(file1.readlines())  

Мое ожидание, что я смогу получить ценность таким образом:

 file1.readlines(Name)  

Я действительно благодарен за помощь. Я новичок в Python. Огромное спасибо

Ответ №1:

Я попытался сохранить информацию, которая вас касается, в словарь, и эта логика основана на файле, которым вы поделились :

 count = 0 key = 0 dic = dict() key_counter = 1 keys = ["Name","Number"] with open("file.log") as fp:  Lines = fp.readlines()  for line in Lines:  count  = 1  if "FileConfig" in line.strip() or ";" in line.strip():  pass  elif key_counter == 1 and line[0] != " ":  key_counter = 2  key= line.strip()  if key in keys:  dic[line.strip()] =0  elif key_counter == 1 and line[0] == " ":  key_counter = 1  if key in keys:  val = dic.get(key)  if isinstance(val, list):  val.append(line.strip())  dic[key] =val  else:  dic[key] = [val,line.strip()]  elif key_counter == 2:  if key in keys:  dic[key] = line.strip()  key_counter = 1 dic  

выход:

 {'Name': 'James', 'Number': '1091125'}  

Комментарии:

1. Привет @alphaBetaGamma, спасибо, но мне не нужно получать весь словарь таким образом, мне нужно получить словарь с указанием ключа, для примера мне просто нужно Name и Number

2. Я обновил ответ, в списке ключей вы можете указать имена нужных вам полей.