Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pymodbus:TypeError:字符串索引必须是整数_Python_Pymodbus - Fatal编程技术网

Python Pymodbus:TypeError:字符串索引必须是整数

Python Pymodbus:TypeError:字符串索引必须是整数,python,pymodbus,Python,Pymodbus,我试图在pymodbus中使用,我面临以下问题 回溯(最近一次呼叫最后一次): 代码如下: 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(

我试图在pymodbus中使用,我面临以下问题

回溯(最近一次呼叫最后一次):

代码如下:

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_值(['40001','int','Pac'])


请帮助我解决此问题

错误和打印值很清楚:
映射
是字符串
'40001'
。你的意思是
block['addr']=int(block['addr'])
?我正在尝试将mapper.py文件更新到最新的python版本。你的建议奏效了,错误现在没有出现。非常感谢。
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'])