python in 与 not in 用法及运算符

2022-09-02 21:20:15 浏览数 (1)

一、in 与 not in

python 中,in 与 not in 是用来作为逻辑判断的另一种方式。(与linux 的grep 命令有一定类似)

文字解释可以理解成这样。

in 右侧的内容里,是否包含了左侧的内容。 包含返回真,不包含返回假。

not in 右侧的内容里是否不包含左侧的内容。不包含返回真,包含返回假。

in 与 not in 可以放在任何允许添加条件判断的位置。如while 、 if 等。

格式

if str1 in str2:

  do xxx

else

  do xxx

示例:

代码语言:javascript复制
#定义变量num值为字符串123
num = "123"
#定义变量num2为int 值 1
num2 = 1
#while 循环条件为,如果变量num 包含字符串2,则循环进行,并打印hehe
while "2" in num:
    print("hehe")
#每次循环,num2都会自增加1
    num2  = 1
#当num  值等于2 时,停止本次while 循环(break 为中断本次循环)
    if num2 == 3:
        break
#最后打印over值
print("over")

#解释:

运行结果

二、运算符

> 大于

< 小于

>= 大于等于

<= 小于等于

!= 不等于 (也可以写作 <>)

== 等于 (1个 = 为赋值变量)

not 对结果取反 (not in not True 等)

and :

一般为 1 >2 and 2<1 翻译为1大于2并且 2小于1。 只有and 两侧的结果都是真,才返回真,有任何一个结果是False 都会返回假。

or :

一般为 1 >2 or 2 > 1 翻译为 1 大于2 或者 2 大于1 。 or 两侧的结果,有任何一个是真,返回结果就是真。只有全部为 False 才会返回False。

注:如果一行代码,有多个and 和 or 可以通过 () 小括号,判断优先级。

如: 1<2 or 1 >3 and 1< 3 or 2 >1 这种就很难看出对应关系,就可以写成

(1<2 or 1 >3 and 1< 3 )or 2 >1 翻译为: 1小于2 或者 1 大于3并且1小于3 。(结果都不成立)亦或者 2大于 1。 最终返回真。

运行结果

(1<2 or 1 >3 )and (1< 3 or 2 >1 ) 翻译为:1小于2 或者 1大于3(因为1小于2所以返回真) 并且 1小于3 或者 2大于1(返回真) 。最终为真

运行结果

由于小括号限制了优先级,所以不同的优先级,返回结果可能是不一样的。

总结:

结果是值

  a = 10 * 10

  赋值运算

  a = a 2   a = 2

结果是布尔值

  比较运算

  a = 1 > 5

  逻辑运算

  a = 1 > 6 or 1 == 1

  成员运算

  a = "1" in "123"

0 人点赞