当前位置: 首页 > news >正文

python 关键字(in)

9、in

在Python中,in关键字是一个强大的工具,用于检查一个元素是否存在于某个序列(如列表、元组、字符串等)或集合(如集合、字典的键)中。

  1. 基础小白知识:in的基本用法

1.1 在序列中检查元素

在Python中,我们可以使用in关键字来检查一个元素是否存在于一个序列中,如列表或元组。

示例代码:

# 检查元素是否在列表中
my_list = [1, 2, 3, 4, 5]
if 3 in my_list:print("3在列表中")
else:print("3不在列表中")# 检查元素是否在元组中
my_tuple = (10, 20, 30)
if 20 in my_tuple:print("20在元组中")
else:print("20不在元组中")

1.2 在字符串中检查子串

同样地,in关键字也可以用于检查一个子串是否存在于一个字符串中。

示例代码:

my_string = "Hello, World!"
if "World" in my_string:print("World在字符串中")
else:print("World不在字符串中")
  1. 进阶知识:in的高级用法

2.1 在字典中检查键

虽然字典不是序列,但我们可以使用in关键字来检查一个键是否存在于字典中。

示例代码:

my_dict = {"name": "Alice", "age": 30, "city": "New York"}
if "age" in my_dict:print("找到了键'age'的值:", my_dict["age"])
else:print("键'age'不存在")

2.2 在集合中检查元素

集合(set)是Python中的一种无序且不包含重复元素的数据结构,我们也可以使用in来检查一个元素是否存在于集合中。

示例代码:

my_set = {1, 2, 3, 4, 5}
if 4 in my_set:print("4在集合中")
else:print("4不在集合中")

2.3 使用in进行列表推导式

进阶的Python用户可能会使用列表推导式(list comprehension)结合in关键字来快速创建新列表或筛选数据。

示例代码:

# 使用in在列表推导式中过滤偶数
my_numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = [num for num in my_numbers if num % 2 == 0]
print(even_numbers)  # 输出: [2, 4, 6, 8]# 使用in在列表推导式中获取某个字符串列表中所有包含特定子串的字符串
my_strings = ["apple", "banana", "cherry", "date", "elderberry"]
strings_with_e = [s for s in my_strings if 'e' in s]
print(strings_with_e)  # 输出: ['apple', 'cherry', 'date', 'elderberry'] 	

2.4 not in的用法

除了in之外,Python还提供了not in操作符,用于检查一个元素是否存在于某个序列或集合中。

示例代码:

my_list = [1, 2, 3, 4, 5]
if 6 not in my_list:print("6不在列表中")
else:print("6在列表中")
  1. 总结

in关键字在Python编程中非常有用,它允许我们快速检查一个元素是否存在于某个序列或集合中。in`关键字扮演着重要的角色。通过结合列表推导式和其他Python特性,我们可以编写出更加简洁、高效的代码。

http://www.lryc.cn/news/343087.html

相关文章:

  • 【Node.js从基础到高级运用】二十八、Node.js 内存管理浅析
  • AES加密解密
  • 通过红黑树封装 map 和 set 容器(1):红黑树的迭代器
  • mysqlbinlog恢复delete的数据
  • 传递给组件
  • 鸿蒙通用组件弹窗简介
  • [译文] 恶意代码分析:1.您记事本中的内容是什么?受感染的文本编辑器notepad++
  • Spring Boot3.x集成Disruptor4.0
  • GoEdge自建CDN工具
  • 牛客储物点的距离
  • 【C++历练之路】红黑树——map与set的封装实现
  • RDB快照是怎么实现的?
  • 智能体可靠性的革命性提升,揭秘知识工程领域的参考架构新篇章
  • Shell 初始化配置指北 | Ubuntu
  • [嵌入式系统-69]:RT-Thread-组件:网络组件“组”,RT-Thread系统通向外部网络世界的入口
  • Linux学习笔记1---Windows上运行Linux
  • Java算法-力扣leetcode-135. 分发糖果
  • 企业为什么需要主数据管理工具?十大热门主数据管理工具盘点
  • 免费思维13招之一:体验型思维
  • 面试C++(基础篇)-NULL与nullptr的区别?
  • 「AIGC」深度学习
  • mysql5.7数据库安装及性能测试
  • 聪明与诚实:社会信任的桥梁
  • 基于单片机的无线数据传输系统设计
  • 【IP:Internet Protocol,子网(Subnets),IPv6:动机,层次编址:路由聚集(rout aggregation)】
  • 智启算力平台基本操作
  • 微信小程序 【关键部分】
  • JavaEE技术之MySql高级(索引、索引优化、sql实战、View视图、Mysql日志和锁、多版本并发控制)
  • OCR文本识别模型CRNN
  • 【数据结构】闲谈A股实时交易的数据结构-队列