python - 无法使用 Python 截断数字

标签 python string numbers format

我一直在寻找关于如何使用 Python 3 截断数字的多个看似错误的建议。我需要打印 2 个数字,保留两位小数。我执行此操作的代码不起作用,Python 抛出:Unknown format code for type 'str'

for row in reader:
    print("Time Stamp: %s - Temperature °C: %s - Humidity: %%: %s" % (row[0], "{:.2f}".format(row[1]), "{:.2f}".format(row[2])))

我曾尝试将 %s 更改为 %f 但出现了类似的错误。如何截断/修剪到小数点后两位?

最佳答案

我认为你的错误 Unknown format code for type str 意味着你在 row 中的值不是数字而是字符串。您应该首先使用 float 转换它。

 for row in reader:
    rowvals = [float(x) for x in row]
    print .... 

关于python - 无法使用 Python 截断数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33976127/

相关文章:

java - 如何将数字小数 (###,###,###.00) 放入字符串值中

Python .read() 无法将 CSV 正确读入字符串

python - 有没有一种pythonic方法可以尝试最多次数?

python - 试图找到最小的数字

检查数字是否满意的 Java 程序会产生不可能的输出

java - 实际和预期字符串具有相同的结果,但测试仍然失败,说预期 [true] 但发现 [false]

python - 在 RHEL 7 虚拟机上安装 psycopg2 时出现 gcc 错误

python - 查询时出现AttributeError : Neither 'InstrumentedAttribute' object nor 'Comparator' has an attribute

python - 根据关键字python拆分文本字符串

python - 我如何比较列表中元组中的字符串