(一)运算(1)

2018-12-13  本文已影响0人  费云帆

1.数字3是一个整型对象,是对象,在内存中就有自己的位置,使用id()查看:

>>> id(3)
1773072240
>>> id(4)
1773072272
>>> id(3.0)
3450416

可以看到,3和3.0地址是不一样的的,所以它们是不同的对象.

2."长整数"问题,在python是不存在的:

>>> 567678654654567878978978978967897*87987419719899758497874845975422
49948580053119490621886628035858554903024967130259612473789027534
>>> 9.8**-7.2
7.297468937055047e-08
>>> a=2e3
>>> a
2000.0
>>> type(a)
<class 'float'>

注意的是,浮点数,依然存在上限,处理浮点数的时候,要注意这点:

>>> 500.0**100000
Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    500.0**100000
OverflowError: (34, 'Result too large')

3.除法:

#整除
>>> 5/2
2.5
#取整用两个除法
>>> 5//2
2
>>> 0.1+0.2
0.30000000000000004
>>> 0.1+0.1+0.1-0.3
5.551115123125783e-17

4.所谓的"别人造的轮子"---模块,库,类,类库

5.取余(%):

>>> 5 % 2
1
>>> 6 % 4
2
>>> 5.0 % 2
1.0
>>> divmod(5,2)
(2, 1)
>>> divmod(6,4)
(1, 2)
#3.14后面是5,四舍五入,进一位,保留两位小数
>>> round(3.145686,2)
3.15

进制转换造成的的"奇葩"问题:

>>> round(1.2345,3)
1.234 #应该是1.235
>>> round(2.235,2)
2.23 #应该是2.24

补充:
1.对象有类型,变量(标签/指针)无类型

上一篇 下一篇

猜你喜欢

热点阅读