python之数值运算程序_[Python Learning]数值计算

环境

TX Yun-Ubuntu 14.04.1 LTS

python-2.7.6

正文

加法运算

int + int -> int

>>>1 + 1

2

int + float -> float

>>>1 + 2.0

3.0

float + float->float

>>>1.0 + 2.0

3.0

减法运算

int - int -> int

>>>2 - 1

1

int - float ->float(反之亦然)

>>>2 - 1.0

1.0

float - float->float

>>>2.0 - 1.0

1.0

乘法运算

int * int -> int

>>>1 * 1

1

int * float -> float(反之亦然)

>>>1 * 2.0

2.0

float * float ->float

>>>1.0 * 2.0

2.0

除法运算

int / int -> int

>>>17 / 3

5

int / float -> float

>>>8 / 0.5

1.6

int // float ->float(地板除)

>>>17 // 3.0

5.0

float / float ->float

>>>2.0 / 2.0

1.0

float // float -> float(地板除)

>>>17.0 // 3.0

5.0

取余运算

int % int -> int

>>>17 % 3

2

int % float -> float(反之亦然)

>>>17 % 3.0

2.0

float % float -> float

>>>17.0 % 3.0

2.0

地板除

”//“ 除法不管操作数何种数值类型,总是舍去小数部分,返回数字序列中比真正的商小的最接近的数字。

>>>1 // 2 #地板除, 返回整数

0

>>>1.0 // 2.0 #地板除, 返回浮点数

0.0

>>>-1 // 2 #返回比 –0.5 小的整数, 也就是 -1

-1

长整数

Lint + int -> Lint

>>>aL=99999L

>>>a=1

>>>a+aL

100000L

幂运算

int ** int -> int

>>>5 ** 2

25

int ** float -> float(反之亦然)

>>>5 ** 2.0

25.0

复数运算

>>>a=1+2j

>>>b=1+2j

>>>a+b #复数加法

(2+4j)

>>>a-b #复数减法

0j

>>>a*b #复数乘法

(-3+4j)

>>>a=1

>>>b=1+1j

>>>a+b #整数+复数

2+1j

数值运算总结

如果有一个操作数是复数, 另一个操作数被转换为复数。

否则,如果有一个操作数是浮点数, 另一个操作数被转换为浮点数。

否则, 如果有一个操作数是长整数,则另一个操作数被转换为长整数;

否则,两者必然都是普通整数,无须类型转换。

对象

>>>a=1

>>>id(a)

38158680

>>>a+=1

>>>a

2

>>>id(a)

38158656

python的变量和我们已知的C语言,Java,php不同,这里用“对象”来描述会更好一些。我们以前对变量的定义是一个“盒子”—— 装着各种类型的数据,其“变”字可以很简单的理解为可变的。重新对变量赋值,那么盒子里面的数据就会更改,但是地址没变,只是值变了。在这里,当我们给python的对象重新赋值,实际上是重新创建了一个对象,并把新的数据放在该对象上,然后返回新对象的引用。尽管看上去和原来一样,理解这一点至关重要。

>>>a=1

>>>a

1

>>>del a

>>>a

Traceback (most recent call last):

File "", line 1, in

NameError: name 'a' is not defined

按照Python的法则,你无法真正删除一个数值对象,你仅仅是不再使用它而已。如果你实际上想删除一个数值对象的引用,使用del语句。删除对象的引用之后,你就不能再使用这个引用(变量名), 除非你给它赋一个新值。如果试图使用一个已经被删除的对象引用,会引发 NameError 异常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值