【发布时间】:2017-10-19 18:02:39
【问题描述】:
我正在编写一个简短的脚本,我计划在其中获取有关主机 PC 的一些信息并将其写入 Excel 工作簿。我还在学习东西,所以没什么花哨的。 我得到了我需要的所有数据,并且可以写入大部分内容。 不过,我似乎无法完成一件事。 尝试以下代码时:
hardwareSheet.write("B7", usage + "%")
我只能打印出 "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 解析为浮点数,它将是一个字符串。 我用谷歌搜索了这个并读到我需要将 str 解析为浮点数,所以我这样做了。任何想法可能出了什么问题?
【问题讨论】:
-
您不能将字符串添加到浮点数。您的程序是否需要对
usage进行算术运算?如果没有,请不要费心将其转换为浮点数。 -
出于什么目的需要将
usage解析为浮点数? -
@PM 2Ring - 是的,我对它做了一些算术运算,但在一个单独的函数中,所以我不必在全局变量中解析它。我现在明白了。干杯。