【发布时间】:2020-04-09 23:43:48
【问题描述】:
我用 Google 搜索过,但找不到正确的答案。
假设我们有浮点数,我们得到它们的平均值。他们的平均值是这样的:
3.5
2.5
5
7
所以我们有 4 个数字(不再在列表中)。两个数字,一个小数,两个整数。
我想做的是,打印这些数字并保持这样的状态。不过,我的问题是,当我使用%.1f 时,它会从 5 和 7 生成 5.0 和 7.0,而我想保持它们原样(所以保持它们作为一个整数)。
所以我想按原样打印它们,但我不知道如何。浮点数将decimal 点添加到整数。将它们转换为 int,会删除所需的小数。
这两个选项都不是我想要的。
有人能指出正确的方向吗?
编辑:相关代码,按要求:
# I have a list of numbers and I am calculating their average and rounding them first.
get_numbers = map(float, line[-1])
average_numbers = sum(get_numbers) / len(get_numbers)
rounded_numbers= round(average_numbers * 2) / 2
# So now, I've got the numbers: 3.5, 2.5, 5, 7
print "The numbers are: %.1f" % (rounded_numbers)
【问题讨论】:
-
将它们转换为整数
-
请澄清 - 你的 4 个数字实际上是
float, float, int, int,还是都是浮动的?请注意,如果您的输入实际上是 int,is_integer解决方案将不起作用,如果您的所有输入实际上都是浮点数,format解决方案将不起作用。 -
都是花车。有些是圆形的,有些不是。
标签: python