Python 不支持的操作数类型为 + :  'float'  and 'str

标签 python excel wmi

我正在编写一个简短的脚本,我计划在其中获取有关主机 PC 的一些信息并将其写入 Excel 工作簿。我还在学习东西,所以没什么特别的。 我得到了我需要的所有数据,并且可以写入大部分内容。 我似乎无法让一件事起作用。 尝试以下代码时:

hardwareSheet.write("B7", usage + "%")

我只能打印出“用法”变量,但是当我添加 +"%"时,我不断收到以下错误:

TypeError: unsupported operand type(s) for +: 'float' and 'str'

我正在使用 xlsxwriter 库来创建和编写 excel。 hardwareSheet.write 是一个允许我将数据写入名为 hardware 的工作表的命令。 以下是我如何获得“用法”变量:

cpuInfo = wmi.Win32_Processor()[0]
usage = float(cpuInfo.LoadPercentage)

如果我没有将 cpuInfo.LoadPercentage 解析为 float ,它将是一个字符串。 我在谷歌上搜索了一下,读到我需要将 str 解析为一个 float ,所以我这样做了。有什么想法可能是错的吗?

最佳答案

你不能在 python 中添加 float 和字符串。 用法 是一个 float 。 "%" 是一个字符串。

你应该这样做:

str(usage) + '%'

关于Python 不支持的操作数类型为 + :  'float'  and 'str,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46836184/

相关文章:

Python读取txt文件中的\n和\r

python - 为什么我得到 "asynchronous comprehension outside of an asynchronous function"?

python - 我将如何获取一个 excel 文件并将其列转换为 Python 中的列表?

Excel LOOKUP 匹配错误的单元格

c# - 通过 WMI 查询时防止 ComExceptions

python - 标准输出和冲洗?它是追加而不是冲洗

python - 如何使用 python 正则表达式删除字符串中特定单词前后的文本

excel - 检查是否选中基于工作表的复选框

c# - 如何使用 WMI 在 Hyper-V guest 上枚举网络适配器?

c# - ManagementObjectSearcher WMIquery 很慢