Python怎么取整(Python程序打包)

Python取整方式:背景在处理数据的时候,碰到了一个问题,就是取整方式!比如给定一个数值型列表,我需要分别获取它位置为长度的0%,25%,50%,75%,100%处的几个数字。但Python自带的int是向下取整,如果数字长度是5,理论上这五个数字分别对应0%,25%,50%,75%,100%的位置,但使用int,结果却并不是入次。比如当5*0.75时,如果加上int(5*0.7

大家好,又见面了,我是你们的朋友全栈君。

取整方式

下面介绍几种常用的取整方法,包括向下取整、四舍五入、向上取整。

(1)向下取整

向下取整很简单,直接使用int()函数即可,如下代码(Python 2.7.5 IDLE)

a = 3.75
 int(a)

3
(2)四舍五入

第二种就是对数字进行四舍五入,具体的看下面的代码:

 a=3.25;b=3.75
 round(a);round(b)
3.0
4.0

(3)向上取整

但三种,就是向上取整,也就是我这次数据处理中需要的,由于之前没在Python中用到过,所以不太熟悉,其实Python的math中就带了向上取整的函数,即 ceil 方法,专门用于向上取整,实例如下:

import math
 math.ceil(3.25)
4.0
 math.ceil(3.75)
4.0

练习
5、某公司的市内通话计费标准为:
三分钟内 0.2元
三分钟后每增加一分钟增加0.2元,不足一分钟按照一分钟算
要求编写程序,给定一个通话时间(单位:s),计算出收费金额

import math

def telfare(telTime):
    time = math.ceil(float(telTime)/60)  #math.ceil向上取整
    if time <= 3:
        fare = 0.2
    else:
        fare = 0.2+(time-3)*0.2
    return fare

print  telfare(250)

6、某市的出租车计费标准为:
3公里内10元,3公里以后每增加0.5公里加收1元,每等待2分钟加收1元
超过15公里加收原价50%的空驶费

#参数:公里数km,时长time,
import math
def taxiCost(km,time):
    km=float(km)
    mins=math.ceil(float(time/60))
    if km<=3.0:
        cost=10+math.ceil(mins/2.0)
    elif km>15:
        cost=(10+math.ceil(mins/2.0)+(km-3.0))*1.5
    elif km>3 and km<=15:
        cost=10+math.ceil(mins/2.0)+(km-3.0)
    return cost
print taxiCost(16,180)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127959.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 编译成功了,运行为什么会失败_如何编译内核

    编译成功了,运行为什么会失败_如何编译内核1:首先在内核文件夹当中选择编译配置文件arch/arm/configs下选则davinci_dm368_ipnc_defconfig_nand(nandflash启动),davinci_dm368_ipnc_defconfig_nfs(nfs文件系统启动)2:makemenuconfig保存退出3:makeARCH=armCROSS_COMPILE=arm_v5t_le-

    2022年8月13日
    1
  • 域名解析 dns_一区新增风险区

    域名解析 dns_一区新增风险区1、DNSDNS(DomainNameSystem)是域名系统的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,用于TCP/IP网络。2、域名系统DNS的作用通常我们有两种方式识别主机:通过主机名或者IP地址。人们喜欢便于记忆的主机名表示,而路由器则喜欢定长的、有着层次结构的IP地址。为了满足这些不同的偏好,我们就需要一种能够进行主机名到IP地址转换的目录服务,域名系统作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。因此,即使不使用域名

    2025年6月12日
    0
  • pycharm下载插件_小新系列哪个性价比高

    pycharm下载插件_小新系列哪个性价比高Pcharm好用插件推荐!!!

    2022年8月26日
    3
  • 阿里云服务器开放所有端口_阿里云服务器开放端口设置

    阿里云服务器开放所有端口_阿里云服务器开放端口设置阿里云服务器默认只开放了部分端口号,服务配置好后,如需客户端远程访问,还需在阿里云服务器安全组开放端口号。具体操作流程如下:ps:0.0.0.0/0即为不限定ip地址,如配置nginx拦截访问端口80或443为了安全,一般需要指定允许访问的ip地址…

    2022年9月27日
    0
  • 关于2020最新Kali无法使用arpspoof命令解决(在源和包都已经安装的情况下)

    关于2020最新Kali无法使用arpspoof命令解决(在源和包都已经安装的情况下)第一步可以参照这个https://hlynford.com/565.html如果你按照上面的步骤安装了相应的包,还是没有相应的命令,那多半就是路径的问题了第二部[root@server~]#echo$PATH/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin如果输出的东西和上面不一样…

    2022年10月6日
    0
  • 我秃了!唯一索引、普通索引我该选谁?

    我秃了!唯一索引、普通索引我该选谁?你遇到过不知道如何选择唯一索引和普通索引的场景么?你知道他俩的原理和区别么?来不及了,快上车!!

    2022年9月20日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号