• 首页
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案
目录

Python的a//b和int(a/b)的区别

在Python中,a//b是取a除以b的结果的整数部分,int(a/b)是算出a/b的结果(浮点数)后,再舍去小数部分。因为a/b的结果是浮点数,会有精度误差。a//b的算法和int(a/b)的算法不一样,a//b没有转换为浮点数步骤,所以a//b不会有误差,而int(a/b)会。

一、Python的a//b和int(a/b)的区别

在Python中,a//b是取a除以b的结果的整数部分,int(a/b)是算出a/b的结果(浮点数)后,再舍去小数部分。因为a/b的结果是浮点数,会有精度误差。a//b的算法和int(a/b)的算法不一样,a//b没有转换为浮点数步骤,所以a//b不会有误差,而int(a/b)会。

整除号://

整除运算,结果向负无穷方向去,取最近的整数

浮点数除法:/

返回float型

使用强制类型转换取整数:int()

结果向0靠近,取最近的整数

print(13/2)  # 6.5

print(13//2)  # 6

print(int(6.5))  # 6

print(-13/2)  # -6.5

print(-13//2)  # -7

print(int(-6.5))  # -6

延伸阅读:

二、Python算术运算符

以下假设变量: a=10,b=20:

运算符 描述 实例
+ 加 – 两个对象相加 a + b 输出结果 30
减 – 得到负数或是一个数减去另一个数 a – b 输出结果 -10
* 乘 – 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/ 除 – x除以y b / a 输出结果 2
% 取模 – 返回除法的余数 b % a 输出结果 0
** 幂 – 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000
// 取整除 – 返回商的整数部分(向下取整 >>> 9//2 4 >>> -9//2 -5

以下实例演示了Python所有算术运算符的操作:

实例(Python 2.0+)

#!/usr/bin/python # -*- coding: UTF-8 -*- a = 21 b = 10 c = 0 c = a + b print “1 – c 的值为:”, c c = a – b print “2 – c 的值为:”, c c = a * b print “3 – c 的值为:”, c c = a / b print “4 – c 的值为:”, c c = a % b print “5 – c 的值为:”, c # 修改变量 a 、b 、c a = 2 b = 3 c = a**b print “6 – c 的值为:”, c a = 10 b = 5 c = a//b print “7 – c 的值为:”, c
运行实例 »

以上实例输出结果:

1 – c 的值为: 31

2 – c 的值为: 11

3 – c 的值为: 210

4 – c 的值为: 2

5 – c 的值为: 1

6 – c 的值为: 8

7 – c 的值为: 2

一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。

相关文章