Я хочу записать данные, которые я получаю через последовательный порт, в файл CSV, чтобы потом можно было обрабатывать их в Excel. Извлечение данных работает, но при записи их в файл CSV вывод не в нужном мне формате.
Я использую код:
ser.write('WER?\r\n'.encode())
meetgegevens = ser.readline()
m_str = str(meetgegevens)
print(m_str)
lst = list(m_str.split(';'))
print(lst)
with open('meetgegevens.csv', 'w', newline='') as csvfile:
writer = csv.writer(csvfile, delimiter=',')
writer.writerows(lst)
Вывод print(m_str)
is:
b'WERTEx=16:>310.0M\xea;17:>310.0M\xea;18:>310.0M\xea;19:>310.0M\xea;20:>310.0M\xea;21:>310.0M\xea;24:00.01mA;25:00.01mA;26:00.01mA;27:00.01mA;28:00.01mA;29:00.05mA;30:00.12mA;58:228.2V;59:050.0Hz;62:226.5V;63:227.2V;81:00.12?;96:0535.V;97:0535.V;98:0535.V;\r\n'
Вывод print(lst)
:
["b'WERTEx=16:>310.0M\\xea", '17:>310.0M\\xea', '18:>310.0M\\xea', '19:>310.0M\\xea', '20:>310.0M\\xea', '21:>310.0M\\xea', '24:00.01mA', '25:00.01mA', '26:00.01mA', '27:00.01mA', '28:00.01mA', '29:00.05mA', '30:00.12mA', '58:228.2V', '59:050.0Hz', '62:226.5V', '63:227.2V', '81:00.12?', '96:0535.V', '97:0535.V', '98:0535.V', "\\r\\n'"]
Данные в списке отформатированы как 'address: value'
. Я хотел бы записать его в CSV-файл, где каждый объект списка находится в новой строке в следующем формате: row1 column1 содержит адрес, а строка 1 column 2 содержит значение.
Пока я только можно получить каждый элемент списка в новой строке, но он находится в одном столбце, а за каждым символом следует запятая.
Кто-нибудь знает, что я делаю неправильно?