python 表达式

表达式简介

表达式是运算符和操作数所构成的序列

#这些都属于表达式#

>>> a = 1

>>> b = [1,2,3,4]

>>> c > b

>>> c = 2 + 6

>>> a or b and c

>>> e = int('1') * 3

#上面表达式中,类似于+、=、>、or、and这种的都是属于运算符,而他们两边的字符、数字则是属于操作数,然后整个的“a = 1”#

 

表达式的优先级

 表达式是有优先级的,最简单的如我们赋值运算符中的数学算式:“0 * 1 + 2”和“0 + 1 * 2”结果一定不一样,在“0 + 1 * 2”中优先运算“1 * 2”。

当然并非是只有赋值运算才优先级,并且在各种运算符之间也有优先级。

#在下面这个运算中,假设a、b、c都是ture值,因为and 的优先级大于 or ,所以最后结果是a#
>>> a or b and c
a

#在下面这个运算中,假设a、b、c、d都是ture值#
#因为 + 的优先级大于 and 大于 or ,所以最后结果是a + b的结果#
>>> a + b or c and d
a + b

#用括号表现优先级就是:先运行a + b,再运行c or d 得到 d ,最后运行(a+b) or d#
>>> (a + b) or (c and d)
a + b

运算符优先级排序

 

但是如果表达式中有赋值运算的话则会最后执行赋值运算。

>>> a = 1
>>> b = 2
>>> c = a + b
>>> c
3


>>> a = 1
>>> b = 2
>>> c = a and b
>>> c
2

python中运算符的优先级也可以用括号来改变,就和数学公式里面一样,先计算最里面的括号,之后就是外面的括号。

>>> 1 or 2 and 3 + 4 - 5
1

>>> ((1 or 2) and 3) + 4 - 5
2

>>> (1 or ((2 and 3) + 4)) - 5
-4

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值