一、in运算符
in运算符是Python中的一种成员运算符,用来检查一个元素是否在另一个序列中。该运算符接受两个参数,第一个参数是待查找的元素,第二个参数是序列。
# 列表中检查元素是否存在 fruits = ['apple', 'banana', 'cherry'] print('apple' in fruits) # True print('orange' in fruits) # False # 字符串中检查子串是否存在 s = 'hello world' print('world' in s) # True print('python' in s) # False # 元组中检查元素是否存在 t = ('apple', 'banana', 'cherry') print('apple' in t) # True print('pear' in t) # False
可以看到,in运算符能够用于不同类型的序列中,包括但不限于列表、字符串、元组等等。对于列表和元组,in运算符是基于元素的,而对于字符串则是基于子串的。
二、not in运算符
not in运算符与in相反,用于检查一个元素是否不在另一个序列中。
# 列表中检查元素是否不存在 fruits = ['apple', 'banana', 'cherry'] print('pear' not in fruits) # True print('apple' not in fruits) # False # 字符串中检查子串是否不存在 s = 'hello world' print('python' not in s) # True print('world' not in s) # False # 元组中检查元素是否不存在 t = ('apple', 'banana', 'cherry') print('pear' not in t) # True print('apple' not in t) # False
与in运算符类似,not in运算符也可以用于不同类型的序列。
三、注意事项
在使用in或not in运算符时,需要注意以下几点:
- 如果待查找的数据不在序列中,则in运算符返回False,not in运算符返回True。
- 如果待查找的数据在序列中,则in运算符返回True,not in运算符返回False。
- 对于字符串的检查,in运算符可以检查一个子串是否为另一个字符串的子串,而not in则是检查一个子串是否不是另一个字符串的子串。
- 在对字典进行成员运算时,in和not in运算符会默认判断键是否存在,而不是值。
- 对于集合数据类型,in和not in运算符默认判断的是元素是否存在。
四、总结
总的来说,in和not in运算符用于判断一个数据项是否在一个序列中,其返回值为True或False。应用于不同类型的序列中时,其功能也略有不同。在使用时需注意区分数据类型和检查的方式,以免出错。