我几乎可以保证,问题是拔出套接字的值中存在某种非打印字符。看起来您正在使用Python 2.x,在这种情况下,您可以使用以下命令进行检查:
print repr(temp)
您可能会在其中看到以表格形式转义的内容
x00。当您直接在控制台上打印时,这些非打印字符不会显示,但是它们的存在足以负面影响将字符串值解析为浮点型。
-为问题更改而编辑-
事实证明,这在某种程度上对于您的问题是准确的-但是,根本原因似乎是您正在从套接字读取比预期更多的信息,或者接收到多个值。你可以做类似的事情
map(float, temp.strip().split('rn'))为了转换每个值,但是如果您的函数应该返回单个浮点值,则可能会引起混淆。无论如何,问题肯定是与从套接字检索到的值中没有出现的字符有关。



