python提供了几个基本的数值运算操作符_Python编程思想(3):数字及其相关运算...

Python 提供了三种数值类型:int(整型),float(浮点型)和complex(复数)。

int:通常被称为整型或者整数,如200、299、10都属于整型;

float:浮点数包含整数和小数部分,如3.1415926,2.71828都属于浮点数;

complex:复数包含实数部分和虚数部分,形如 a+bj,其实部和虚部都是浮点类型;

需要注意的是,Python3 已经废弃了 Python2 的 Long(长整型),在 Python3 中,int 的大小没有限制,可以作为 Long 使用。这也是为什么Python非常适合科学计算的原因,因为Python可以处理无限大的整数。在Python中进行数值运算,并不需要考虑溢出问题,因为Python的数值永远不会溢出。

1. 数值类型之间的转换

Python 的三种数值类型可以进行相互转换,转换方式为:数字类型+圆括号,如下实例:

a = 456b= 2.71828

print("int(b)=",int(b))print("float(a)=",float(a))print("complex(a)=",complex(a))print("complex(a,b)=",complex(a,b))

执行结果如下图所示:

AB3E2D6A76BC424EBC261C9BCFAEC2DC

32818-20200603082822794-1831962527.png

2. 常用的数学函数

Python 提供了丰富的数学函数以降低编程实现的难度,本问将介绍一些常用的函数。

importmath#求绝对值:abs(x)

print("abs(-200)=",abs(-200))#向上取整:ceil(x)

print("ceil(3.1415)=",math.ceil(3.1415))#向下取整:floor(x)

print("floor(3.678)=",math.floor(3.678))#四舍五入:round(x)

print("round(3.678)=",round(3.678))#乘方运算:pow(x,y),x的y次方

print("pow(3,4)=",pow(3,4))#求平方根:sqrt(x)

print("sqrt(144)=",math.sqrt(144))

执行结果如下图所示:

32818-20200603082914741-27651126.png

E52C7A0754A74E3FABB2F6032CA16ED4

3. 运算符

计算机的最基本用途之一就是执行数学运算,作为一门计算机编程语言,Python 也提供了一套丰富的运算符来满足各种运算需求。

Python 运算符主要可以分为6种:算术运算符、比较运算符、赋值运算符、逻辑运算符、位运算符和成员运算符。

(1)算术运算符

对于算术运算,大家并不陌生,常用的加减乘除就是算术运算。不过,在编程语言里,算术运算符特殊一些,Python 中的算术运算有7种:加(+)、减(-)、乘( * )、除(/)、取模(%)、幂运算( ** )和取整预算(//)。以下通过实例演示算术运算符的用法。

#初始化测试数据

x = 30y= 24z= 12

#分别进行7种算术运算

z = x +yprint("x + y =", z)

z= x -yprint("x - y =", z)

z= x *yprint("x * y =", z)

z= x /yprint("x / y =", z)

z= x %yprint("x % y =", z)

z= x **yprint("x ** y =", z)

z= x //yprint("x // y =", z)

执行结果如下图所示:

32818-20200603083011058-329278017.png

(2)比较运算符

比较无处不在,大于、小于、等于、不等于……和 C/C++、Java 等编程语言一样,Python 也提供了6种比较运算符:>(大于),<(小于),==(等于),!=(不等于),>=(大于等于),<=(小于等于)。比较运算的结果是一个布尔值,True 或者 False,看下面的案例代码:

#初始化变量

x = 12y= 7

#分别进行6种比较运算

print("x == y:", x ==y)print("x != y:", x !=y)print("x > y:", x >y)print("x < y:", x = y:", x >=y)print("x <= y:", x <= y)

执行结果如下图所示:

32818-20200603083107758-1177712224.png

05D63B91821049A7A7D74AE0D9F70338

(3)赋值运算符

其实在前面的代码中已经用到赋值运算,如 x = 12,就是一个最简单的赋值运算,“=”就是最简单的赋值运算符。将简单的赋值运算与算术运算结合,Python 形成了更丰富的赋值运算符:+=、-=、=、/=、%=、*=、//=。看下面的案例代码:

#初始化变量

x = 12y= 21

#分别进行7种赋值运算

y =xprint("y = x, y =", y)

y+=xprint("y += x, y =", y)

y-=xprint("y -= x, y =", y)

y*=xprint("y *= x, y =", y)

y/=xprint("y /= x, y =", y)

y**=xprint("y **= x, y =", y)

y//=xprint("y //= x, y =", y)

执行结果:

32818-20200603083153969-1367979757.png

(4)逻辑运算符

所谓逻辑运算,就是:与、或、非。Python 中的3种逻辑运算符分别为:and(与),or(或),not(非),逻辑运算的结果是布尔值:True 或者 False。

A and B:当A和B有一个为False时,结果就为False,只有A和B都为True时,结果才为True;

A or B:只有当A和B都是False时,结果才为False,只要有一个为True,结果就为True;

not A:当 A 为 True 时,返回 False,否则返回 True。

看下面的案例:

#初始化变量

a = 2b= 3c= 5

#分别执行3种逻辑运算

print("a>b and ab and ab or c :", a>b or a

执行结果如下图所示:

32818-20200603083249219-336864506.png

02B3543310274919AA3B9B378CA5E936

(5)位运算符

程序中的所有数值在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。Python 中有6种位运算符:

&:按位与,参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0;

|:按位或,只要对应的2个二进位有一个为1时,结果位就为1;

^:按位异或,当两对应的二进位相异时,结果为1;

~:按位取反,对数据的每个二进制位取反,即把1变为0,把0变为1;

>>:按位右移,将>>左侧的数按位向右移动>>右边的数指定的位;

<<:按位左移,将<<左侧的数按位向左移动<<右边的数指定的位;

看下面的案例代码:

a = 21b= 6

print('a & b =',a &b)print('a | b =',a |b)print('a ^ b =',a ^b)print('~a =',~a)print('a << 2 =',a << 2)print('a >> 2 =',a >> 2)

执行结果如下图所示:

55C1988E591340CEB16E99700B50566E

32818-20200603083343249-1257833066.png

这里讲a=21,b=6,转换为二进制如下:

a = 0001 0101b= 0000 0110a&b = 0000 0100a|b = 0001 0111a^b = 0001 0011

~a = 1110 1010a<<2 = 01010100a>>2 = 0000 0101

(6)成员运算符

除了前面介绍的5种运算符,Python 还支持成员运算符。介绍成员运算符之前,我们需要提前了解一个概念:数据结构,如字符串、列表、元组、字典。在接下来的文章中我们将详细介绍这些基础的数据结构。字符串、列表、字典,它们就像一个集合,其中包含若干元素,这些元素就是集合的成员;对于一个给定的元素,它有可能在一个给定的集合中,也可能不在,Python 中采用成员运算符来判断元素是否属于成员,成员运算的结果为布尔值,True 或者 False。

看下面的代码:

#初始化字符串和列表

temp1 = "abcdefg"temp2= [4,2,3,5,8,9]

a= "cdf"b= 5c= "cde"

print("a in temp1?", a intemp1)print("b in temp2?", b intemp2)print("c in temp1?", c in temp1)

执行结果如下图所示:

38E5A5D21BDF46AB982011AFF1187CFC

32818-20200603083451261-1022181216.png

32818-20200603083948298-1321204404.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值