python 基础知识第4讲:运算符

运算符

运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是 “+” 比如: + - * /

1.算术运算符

表现形式:+ - * / 号

数字相加代码示例
y=1+4
print('y'=,y)

执行结果:5

字符串相加(+)则会进拼串操作,代码示例
s='hello'
s1='world'
s2=s+' '+s1
print(sa)

执行结果:hello world`

数字相减(-)代码示例

减法不支持字符串的操作

x=3-1
print(x)

执行结果:2

数字相乘()代码示例*
x=3*3
print(x)

执行结果:9

字符串相乘()代码示例*

如果将字符串和数字相乘,则会对字符串进行复制操作,将字符串重复指定的次数

x=‘hello’
y=x*5
print(x)

执行结果为:hellohellohellohellohello

数字相除(/)代码示例

除法运算符总会返回一个浮点类型的值

x=3/1
print(x)

执行结果为:3.0

数字整除(//)代码示例

整除只会保留计算后的整数位,只会返回一个整型

x=7/3
print(x)

执行结果为:2.0

数字幂运算()代码示例

取1个数几次幂,也就是一个数的几次方

x=2**2
print(x)

执行结果为: 4.0

数字开平方运算(* 0.5)代码示例*

取1个数的平方根,也会返回一个浮点型

x=25**0.5
print(x)

执行结果为:5.0

数字取余(% 模)代码示例

取2个数相除的余数

x=7/3
print(x)

执行结果为: 4.0

2.赋值运算符

就是将一个数据赋值给一个变量,由=连接,=就是赋值运算符 例:a=10

  • += x += 3 相当于 x = x + 3
  • -= x -= 3 相当于 x = x - 3
  • *= x *= 3 相当于 x = x * 3
  • /= x /= 3 相当于 x = x / 3
  • //=x //= 3 相当于 x = x // 3
  • %=x %= 3 相当于 x = x % 3

3.比较运算符

比较运算符就是用来比较两个值之间的关系,总会返回一个布尔值 1 > 比较左侧值是否大于右侧值 2 >= 比较左侧值是否大于或者等于右侧值 3 < 比较左侧值是否小于右侧值 4 <= 比较左侧值是否小于或者等于右侧值 5 == 比较是的2边的值

注:整数和字符串不能做比较

字符串之间的比较是按ascll码来比,如果一个字符串有多个字符,那么比较的方式是对位比较,也就是按位置一个一个的比。如果前面的能比出结果就输出相应的结果,如果不能比出结果,刚继续比,直到比出结果

如果我们想比较id 怎么办? 可以用到 is 和 is not

is 比较两个对象是否是一个对象 比较的是对象的id is not 比较两个对象是否不是同一个对象,比较的是对象的id

4.逻辑运算符

  • 1 not 逻辑非 可以对符号右侧的值进行非运算 对于布尔值,非运算会对其进行取反操作 True -> Fasle False -> True
注:对于非布尔值,会先将其转换为布尔值,然后在取反

例如 0 空串 None还有一些其他是空性的值会转换成False,剩下的都是True

x=2 and 4
print(x)

执行结果为:4

  • 2 and 逻辑与 可以对符号两侧的值进行与运算 只有在符号两侧都是True的情况下才会返回True,只要有一个Fasle就会返回False(说白了与运算就是找Fasle)
  • 3 or 逻辑或 or 可以对符号两侧的值进行或运算 或运算两个值只要有一个True,就会返回True, 或运算就是找True
  • 4 非布尔值的与或运算 当我们对非布尔值进行与或运算的时候,Python会将其当做布尔值进行运算,最终会返回原值
x=2 and 4
print(x)

执行结果为:4

  • 与运算的规则 与运算找Fasle,如果第一个值是Fasle,就不看第二个值 如果第一个值不是False,则直接返回第二个值
  • 或运算的规则 或运算就是找True,如果第一个值是True,则不看第二个值 如果第一个值是Fasle,则返回第二个值

5.条件运算符

又叫:三元运算符 例:

image.png

语法: 语句1 if 条件表达式 else 语句2

例:

r=1 < 2 <3
print(x)

执行结果为:True

a=30 
b=40 
print('a的值大') if a>b else print('b的值大')

执行结果为:b的值大

max=a if a>b else b
print(max)

执行结果为:40

# a,b ,c 三个变量,通过条件运算符获取三个值当中的最大值
a=30
b=40
c=60
max=a if a>b and a>c else b if b>c else c 
print(max)

执行结果为:60

以上代码不利于阅读,我们可以将其调整一下方便阅读,调后代码如下:

# a,b ,c 三个变量,通过条件运算符获取三个值当中的最大值
a=30
b=40
c=60
max=a if (a>b and a>c) else (b if b>c else c) 
print(max)

执行结果为:60

6.运算符的优先级

例:

a = 2 or 3 and 4

分析以上代码

  • or 和 and 优先级一样 从左往右运算 结果4
  • or 优先级高 结果 4
  • and 优先级高 结果 2
  • 运算符的优先级可以根据表格来查询,规则:优先级越高越优先计算,如果优先级一样就是从左往右计算
a = not 4 >2 and 5 > 6 or 3 < 4 
a = not (4 >2 and 5 > 6 or 3 < 4) 

执行结果为:True 执行结果为:False

运算符的优先级表格

运算符说明

Python运算符

优先级

索引运算符

x[index]或x[index:index2[:index3]]

18、19

属性访问

x.attrbute

17

乘方

**

16

按位取反

~

15

符号运算符

+或-

14

乘、除

*、/、//、%

13

加、减

+、-

12

位移

>>、<<

11

按位与

&

10

按位异或

^

9

按位或

|

8

比较运算符

==、!=、>、>=、<、<=

7

is运算符

is、is not

6

in运算符

in、not in

5

逻辑非

not

4

逻辑与

and

3

逻辑或

or

2

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券