Pymodbus: TypeError: строковые индексы должны быть целыми числами - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь использовать modbus_mapper в pymodbus, и я сталкиваюсь со следующей проблемой

Traceback (последний вызов был последним):

File "C:\Users\AppData\Local\Programs\Python\Python37-32\lap.py", line 311, in mapping_decoder mapping['addr'] = int(mapping['addr'])
TypeError: string indices must be integers

theкод выглядит следующим образом:

template = ['addr', 'fun', 'type', 'stat']
def mapping_decoder(mapping_blocks, decoder=None):
for block in mapping_blocks.values():
    for mapping in block.values():
        print(mapping)
        print(block.values())
        mapping['addr'] = int(mapping['addr'])

Печать печати (сопоставления) и печати (block.values ​​()) я получаю следующий вывод:

40001
dict_values ​​(['40001 ',' int ',' Pac '])

, пожалуйста, помогите мне в решении этой проблемы

...