按键动力学项目报错:TypeError: 需整数参数,传入浮点数
按键动力学项目chr()函数报错修复
报错信息
Traceback (most recent call last):
File "N:\NCI Cyber Security\Sem 3\keycalculatingValue.py", line 37, in
finalData['key'] = chr(keyList[j])
TypeError: integer argument expected, got float
问题原因
chr()函数仅接受整数参数(对应ASCII码值),但你的代码中keyList[j]是浮点数类型,不符合函数参数要求。
解决方案
直接转换参数类型:在调用
chr()前用int()将浮点数转为整数,修改代码如下:finalData['key'] = chr(int(keyList[j]))注意:如果
keyList[j]是带小数的浮点数(如65.3),int()会直接截断小数部分,可能导致ASCII码对应错误。这种情况需要先排查keyList的生成逻辑——比如数据采集、运算环节是否误将整数转为了浮点数,从源头确保数值为整数。源头修正:检查
keyList的生成代码(比如数据读取、运算步骤),确保存储的是整数类型。例如从表格文件读取时,指定列数据类型为整数,避免系统自动转为浮点数。
内容的提问来源于stack exchange,提问作者Nikita Phadol
相关产品推荐
相关产品推荐

