小甲鱼Python 2

一、数字类型

Python有三种不同的数字类型,整数,浮点数,复数。

整数

Python中的整数是没有长度限制的,位数可以无限大。Python中的除法会保留小数点,6/2=3.0

浮点数

我们试验下 0.1+0.2=多少?Python输出结果并不是0.3!这和IEEE754标准有关(详见计算机组成原理篇)我们如果想要精确计算浮点数,需要用到一个叫decimal的模块。

import decimal
a=decimal.Decimal('0.1')
b=decimal.Decimal('0.2')
print(a+b)
c=decimal.Decimal('0.3')
c==a+b

科学计数法:0.00005Python表示为5e-05,意思为5*10^-5。

复数

复数以1+2j的形式使用。如果我们用x=1+2j,那么可以用x.real获取实部,x.imag获取虚部。(注意都是浮点数)

x=3+5j
x.real
x.imag

运算符 

Python中/表示真正的除法。//表示高斯函数,也就是不超过x的最大整数。

 对于复数而言,abs表示取模运算。int(x)表示将小数部分直接扔掉,只要整数部分。

pow运算与**运算没有本质区别,只不过pow运算可以加入第三个参数,如pow(a,b,c)表示a**b%c。

二、布尔类型

结果为FALSE的所有可能

定义为false的所有对象:None和False

值为0的数字集合:0,0.0,0j,Decimal(0),Fraction(0,1)  Fraction(0,1)表示分子为0分母为1的有理数

空的序列和集合:‘’  (){}   []      set()       range(0)

比较和逻辑运算符

1=TRUE,0=FALSE,布尔类型其实就是特殊的数字类型。

与逻辑:and                                     或逻辑:or                      非逻辑:not

Python中所有对象都支持真值测试,用于if或while的语句判断,这时表示为逻辑运算。

短路逻辑

表达式3 and 4,结果是4,为什么呢?

短路逻辑指的是,从左往右,只有当第一个操作数的值无法确定逻辑运算的结果时,才对第二个操作数进行求值。

and要求两个操作数结果都为TRUE,右边的结果影响最后结果,所以Python抛出结果4

表达式3 or 4,结果是3

因为两边只要有一个是TRUE就行了,所以将第一个操作数3抛出。

表达式0 and 3 结果是0,

第一个数字0已经表明为假了,所以不必继续往后计算,将0抛出。

表达式0 or 4,结果是4

虽然第一个数字0是FALSE,但是右边结果也影响最终运算,因此抛出4.

运算符优先级

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值