Только начинаю с питона и знаю достаточно, чтобы знать, что ничего не знаю. Я хотел бы найти альтернативные способы разделения списка на список dicts. Список Пример:Python: Разделить список в список dicts?
data = ['ID:0:0:0',
'Status:Ok',
'Name:PhysicalDisk0:0:0',
'State:Online',
'FailurePredicted:No',
'ID:0:0:1',
'Status:Ok',
'Name:PhysicalDisk0:0:1',
'State:Online',
'FailurePredicted:No']
Закончено список dicts:
[{'Status': 'Ok',
'State': 'Online',
'ID': '0:0:0',
'FailurePredicted': 'No',
'Name': 'PhysicalDisk0:0:0'},
{'Status': 'Ok',
'State': 'Online',
'ID': '0:0:1',
'Name': 'PhysicalDisk0:0:1',
'FailurePredicted': 'No'}]
Этот список повторяющихся элементов, которые требуют несколько dicts и список изменяется в длину. Мой код кажется, что он может быть упрощен, если бы я только знал Python. Мой текущий код:
УДАЛЕННЫЙ КОД Это не сработало. :(
----------- File output as requested -------------------
# omreport storage pdisk controller=0
List of Physical Disks on Controller PERC 5/i Integrated (Embedded)
Controller PERC 5/i Integrated (Embedded)
ID : 0:0:0
Status : Ok
Name : Physical Disk 0:0:0
State : Online
Failure Predicted : No
Progress : Not Applicable
Type : SAS
Capacity : 136.13 GB (146163105792 bytes)
Used RAID Disk Space : 136.13 GB (146163105792 bytes)
Available RAID Disk Space : 0.00 GB (0 bytes)
Hot Spare : No
Vendor ID : DELL
Product ID : ST3146755SS
Revision : T107
Serial No. : 3LN1EF0G
Negotiated Speed : Not Available
Capable Speed : Not Available
Manufacture Day : 07
Manufacture Week : 24
Manufacture Year : 2005
SAS Address : 5000C50004731C35
ID : 0:0:1
Status : Ok
Name : Physical Disk 0:0:1
State : Online
Failure Predicted : No
Progress : Not Applicable
Type : SAS
Capacity : 136.13 GB (146163105792 bytes)
Used RAID Disk Space : 136.13 GB (146163105792 bytes)
Available RAID Disk Space : 0.00 GB (0 bytes)
Hot Spare : No
Vendor ID : DELL
Product ID : ST3146755SS
Revision : T107
Serial No. : 3LN1EF88
Negotiated Speed : Not Available
Capable Speed : Not Available
Manufacture Day : 07
Manufacture Week : 24
Manufacture Year : 2005
SAS Address : 5000C500047320B9
Можете ли вы предположить, что каждый элемент будет иметь ровно пять пунктов ID, статус, имя, состояние, failurePredicted? – Smashery
Что есть в данных ??? как вы получили данные? из файла ?? показать формат файла, если он доступен – ghostdog74
@Smashery, no. количество предметов отличается. – CarpeNoctem