我正在编写一个简短的脚本,我计划获取有关主机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,那么它将是一个字符串。 我用Google搜索并读取我需要将str解析为浮点数,所以我这样做。任何想法可能出错?
答案 0 :(得分:5)
你不能在python中添加浮点数和字符串。 usage
是一个浮点数。 "%"
是一个字符串。
str(usage) + '%'
答案 1 :(得分:0)
这是获得相同输出的另一个选项。
'{0}%'.format(usage)
答案 2 :(得分:0)
使用 Python 3.6+ f-strings 的尖端解决方案:
hardwareSheet.write("B7", f'{usage}%')