python除法相关

python 除法相关

python3除法取整
  利用"//"操作

a = 5.5
b = 2
print(a//b)

# 结果
2
python3精确减法与精确除法
a = 0.9
b = 1

print(b-a)
print((b-a)/100)
print((0.1)/100)

# 结果
0.09999999999999998
0.0009999999999999998
0.001

python计算要把数字先转为二进制,因为浮点数以二进制形式表示时的有穷性(利用乘K取余法,0.9的二进制无限延展),会导致计算误差。

这时候为了实现精确运算,可以使用类decimal。
import decimal
decimal.getcontext().prec = 10   # 取小数点后精度到第10位
a = 0.9
b = 1

print(decimal.Decimal(b)-decimal.Decimal(a))
print((decimal.Decimal(b)-decimal.Decimal(a))/100)
print((0.1)/100)

# 结果
0.1000000000
0.0010000000
0.001
### Python 除法运算的使用方法 在 Python 中,除法运算可以通过多种方式实现。以下是关于如何在 Python 中进行除法运算的具体说明。 #### 标准除法 `/` 标准除法运算符 `/` 是最常用的除法运算符,在 Python 3 中无论操作数是整数还是浮点数,其结果始终是一个浮点数[^2]。 例如: ```python result = 10 / 3 print(result) # 输出:3.3333333333333335 ``` #### 整数除法 `//` 如果只需要获取商的整数部分而忽略余数,则可以使用地板除(Floor Division)运算符 `//`。它返回的是向下取整后的结果。 ```python result = 10 // 3 print(result) # 输出:3 ``` #### 取模 `%` 对于需要计算两数相除后剩余的部分,可采用取模运算符 `%` 来获得余数。 ```python remainder = 10 % 3 print(remainder) # 输出:1 ``` #### 不使用 `/` 实现除法 如果不允许直接使用 `/` 运算符来完成除法运算,那么可以通过减法循环或者位移等方式模拟除法过程。下面展示了一种通过不断累加被除数直到接近目标值的方式实现除法的功能[^1]: ```python def custom_divide(dividend, divisor): sign = -1 if ((dividend < 0) ^ (divisor < 0)) else 1 dividend, divisor = abs(dividend), abs(divisor) quotient = 0 while dividend >= divisor: dividend -= divisor quotient += 1 return sign * quotient # 测试函数 print(custom_divide(10, 3)) # 输出:3 ``` #### 控制精度的小数点保留 当涉及到高精确度的需求时,比如只保留小数点后几位的情况,可以利用字符串格式化或四舍五入功能达成目的[^3]。如下所示为两种常见做法之一——运用内置 round 函数调整有效数字数量: ```python value = 10 / 3 rounded_value = round(value, 2) print(rounded_value) # 输出:3.33 ``` 另外还可以借助 f-string 或 format 方法自定义显示样式. --- ### 总结 综上所述,Python 提供了灵活多样的途径去满足不同场景下的除法需求,无论是基础的标准除法整数型别的地板除或是特殊情况下手写逻辑替代传统符号表达均能轻松应对各种挑战。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值