Вы получили ошибку, потому что в первой строке данных не было пробела и данные должны быть разделены на / не пробел.чтобы получить ожидаемый результат, вы можете использовать приведенный ниже пример кода.
import re
filename = ("input_file.txt")
has_header = True
count = 1
commands = {}
with open(filename) as fh:
for line in fh:
if has_header == True and count == 1:
count+=1
continue
nama, id, Jumlah = line.strip().split('/')
commands['nama'] = commands.get('nama','') + nama.split('.')[1] + ','
commands['id'] = commands.get('id','') + id.split(':')[1] + ','
commands['Jumlah'] = commands.get('Jumlah','') + Jumlah.split(':')[1] + ','
print(commands)
Пример вывода:
{'nama': 'Detergent ,Sabun Mandi ,Pasta gigi ,', 'id': 'B001 ,B002 ,B003 ,', 'Jumlah': '500,300,400,'}