sanya8843
Сен. 2, 2022 21:03:27
Linux, имеется огромная папка с текстовыми файлами, требуется написать скрипт, который будет проходить по файлам определенной папки и записывать в уже существующий словарь текст, идущий после названия ключа. Пример: в словаре есть ключ Computer, нужно чтобы скрипт, если в файле встречается строчка, имеющая Computer, то все, что идет после этой строчки до переноса записывается в значение ключа Computer, что-то по типу такого: в файле есть строчки Computer: MSI Nightblade B85C-214RU и Price: 60000, нужно чтобы записало в dictionary = {'Computer' : ‘ MSI Nightblade B85C-214’ , ‘Price’ : ‘60000’}. Недавно начал изучать python, и в голову не лезет как это все провернуть
py.user.next
Сен. 2, 2022 23:09:02
Тут изобразил файл
>>> import io
>>>
>>> text = """\
... Computer: MSI Nightblade B85C-214RU
... Price: 60000
... """
>>>
>>> stream = io.StringIO(text)
>>>
>>> dct = {}
>>> for i in stream:
... key, value = map(str.strip, i.split(':', 1))
... dct[key] = value
...
>>> dct
{'Computer': 'MSI Nightblade B85C-214RU', 'Price': '60000'}
>>>
Тут файл сделал с таким же содержимым и открыл его
>>> ifname = 'file.txt'
>>>
>>> dct = {}
>>> with open(ifname, encoding='utf-8') as fin:
... for i in fin:
... key, value = map(str.strip, i.split(':', 1))
... dct[key] = value
...
>>> print(dct)
{'Computer': 'MSI Nightblade B85C-214RU', 'Price': '60000'}
>>>