如何仅在非整数时显示小数点?

2024-04-20

我用谷歌搜索过,但找不到正确的答案。

假设我们有浮点数并得到它们的平均值。他们的平均值是这样的:

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)

您可以使用浮动'是整数 https://docs.python.org/3.4/library/stdtypes.html#float.is_integer方法。它返回True如果浮点数可以表示为整数(换句话说,如果它的形式为X.0):

li = [3.5, 2.5, 5.0, 7.0]

print([int(num) if float(num).is_integer() else num for num in li])
>> [3.5, 2.5, 5, 7]

EDIT

OP添加代码后:

您应该对计算的平均值使用相同的逻辑,而不是像上面的原始示例那样使用列表理解:

get_numbers = map(float, line[-1])  # assuming line[-1] is a list of numbers
average_numbers = sum(get_numbers) / len(get_numbers)
average = round(average_numbers * 2) / 2
average = int(average) if float(average).is_integer() else average
print average  # this for example will print 3 if the average is 3.0 or
               # the actual float representation. 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何仅在非整数时显示小数点? 的相关文章

随机推荐

  • 使用ggplot2和facet_wrap显示不同的轴标签

    我有一个包含不同变量和不同单位的时间序列 我想在同一个绘图上显示它们 ggplot 不支持多轴 正如这里所解释的 https stackoverflow com questions 3099219 plot with 2 y axes on
  • Chart.getSelection() 无法与谷歌条形图正常工作

    drawBarChart function data few statements goes here which sets options which are being passed to chartDraw i e t options
  • 使用 PHP 查找给定字符串中所有可能的 2 个字母组合 [重复]

    这个问题在这里已经有答案了 我试图找到给定字符串的所有可能的 2 个字母组合 有没有比按位置应用子字符串然后再次调用该函数更快的方法 以下是我正在尝试的 function permute str if strlen str lt 2 ret
  • 创建 Java 泛型类时尖括号中的波形符意味着什么?

    我正在阅读一些 JMockit 示例并发现以下代码 final List
  • 同步访问双向链表

    我正在尝试在 pthreads 环境中用 C 实现一个 特殊类型的 双向链表 但仅使用 C 包装的同步指令 如原子 CAS 等 而不是 pthread 原语 列表的元素是固定大小的内存块 几乎肯定无法容纳pthread mutex t等等
  • 适用于不同屏幕尺寸和密度组合的可绘制文件夹

    可绘制文件夹有什么用 低密度 中屏 低密度 大屏幕 低密度 超大屏幕 中等密度 小屏幕 中密度 大屏幕 中等密度 超大屏幕 对于平板电脑 低密度 中屏 drawable ldpi 低密度 大屏幕 drawable large ldpi 低密
  • R 对对象列表进行排序

    我有一个对象 key value 对列表 例如 列表 预测 1 1 1 0000000 0 8564264 2 1 2 0000000 0 1980792 我想按每个元素的第二个组成部分降序排列此列表 意味着按 0 8564264 和 0
  • 如何在 JPA 查询中编写 MAX 和 OVER (PARTITION BY) 函数

    我需要根据另一列 绘图编号 获取一列 修订版 最大值 谁能告诉我此功能的 JPA 查询 我编写了以下查询 但该查询不起作用 请帮助我如何在 JPA 查询中编写 MAX 和 OVER PARTITION BY 函数 Query select
  • 为什么我的输入不适合 div?

    我写了这个html和css代码 HTML div div h1 Seek enjoy h1 h3 Your movie seeker h3 div div div div
  • 使用反射实例化不可变对象

    我创建了一个基类来帮助我减少 C 中不可变对象初始化的样板代码 我使用延迟初始化是为了尽量不影响性能 我想知道这样做对性能有多大影响 这是我的基类 public class ImmutableObject
  • HashLocation 策略有什么缺点吗?

    我目前正在学习 Angular 我已经使用 HashLocation 实现了路由器 因为 PathLocation 在 Apache 服务器中不起作用 我浏览了各种帖子来解决这个问题 但最终不得不选择 Apache 的 HashLocati
  • 实体框架代码优先 - 将两个字段合并为一个集合

    我有这个型号和配置 public class Person public int FatherId get set public virtual Person Father get set public int MotherId get s
  • 使用内联要求

    如果我使用内联要求 如下所示 function something paths return require path join paths something etc etc 每次调用时引擎都需要吗 例子 let i 10 while i
  • 使用频带刻度的相同可重复字符串值

    我是 D3 的新手 想绘制带有 6 个水平条的图表 我的 xAxis 与它们的值是scaleLinear 的 所以我希望 yAxis 只是一个包含每个条形名称的列表 所以对于 yScale 我有 6 个名称 Games Apps Games
  • 禁用 Odoo 中看板列视图上的拖动和排序功能

    我正在 Odoo 9 中制作看板视图 以在基于 Many2one 字段的列中显示我的模型 我创建了这样的看板视图
  • matplotlib散点图颜色作为第三个变量的函数[重复]

    这个问题在这里已经有答案了 我想知道如何通过第三个变量使 matplotlib 的散点函数颜色点 问题matplotlib 中的 gnuplot linecolor 变量 https stackoverflow com questions
  • build.gradle 文件中的 IntelliJ 运行配置

    我有一个 Gradle 项目 目前可以通过以下方式导入到 IntelliJ 中 build gradle文件 IntelliJ 将设置正确的源位置并为我引入依赖项 我想做的是列出 IntelliJ 运行配置 build gradle文件 以
  • UIViewController 通话中状态栏问题

    Issue 通话状态栏消失后 模态呈现的视图控制器不会向上移动 在顶部留下 20px 的空白 透明空间 正常 没有问题 通话中 没有问题 通话中消失后 在顶部留下 20 像素高的空白 透明空间 显示下面的橙色视图 但是状态栏仍然存在于透明区
  • “您确定要离开此页面吗?”取消和确定功能

    我正在尝试执行类似于您离开的某些网站的操作 它会显示一个弹出窗口 显示 您确定要离开此页面吗 并有两个选项 取消 和 确定 我该如何做到这一点 并做到当您单击 取消 时 它只会取消该框 当他们单击 确定 时 它会执行 leaveChat 功
  • 如何仅在非整数时显示小数点?

    我用谷歌搜索过 但找不到正确的答案 假设我们有浮点数并得到它们的平均值 他们的平均值是这样的 3 5 2 5 5 7 所以我们有 4 个数字 不再在列表中的人 两个带小数的数字和两个整数 我想做的是 打印这些数字并保持这样 但我的问题是 当