python中的数字

  • Python支持任意大的数字,具体可以大到什么程度仅受内存大小的限制。
  • 由于精度的问题,对于实数运算可能会有一定的误差,应尽量避免在实数之间直接进行相等性测试,而是应该以二者之差的绝对值是否足够小作为两个实数是否相等的依据。
  • 在数字的算术运算表达式求值时会进行隐式的类型转换,如果存在复数则都变成复数,如果没有复数但是有实数就都变成实数,如果都是整数则不进行类型转换。

>>>0.3 + 0.2             #实数相加
>>>0.4 - 0.1              #实数相减,结果稍微有点偏差
>>> 0.4 - 0.1 == 0.3             #应尽量避免直接比较两个实数是否相等
>>>abs(0.4-0.1 - 0.3) < 1e-6    #这里1e-6表示10的-6次方

第一条语句的值是0.5,第二条则是0.30000000000000004,第三条是False最后一条是True

  • Python内置支持复数类型及其运算,并且形式与数学上的复数完全一致
  • Python 3.6.x支持在数字中间位置使用单个下划线作为分隔来提高数字的可读性,类似于数学上使用逗号作为千位分隔符。
  • 在Python数字中单个下划线可以出现在中间任意位置,但不能出现开头和结尾位置,也不能使用多个连续的下划线
  • Python标准库fractions中的Fraction对象支持分数及其运算。
  • 标准库fractions和decimal中提供的Decimal类实现了更高精度实数的运算。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值