【常用总结】用Python对数据结构进行个性化过滤操作

编程入门 行业动态 更新时间:2024-10-10 12:18:38

【常用总结】用Python对<a href=https://www.elefans.com/category/jswz/34/1769880.html style=数据结构进行个性化过滤操作"/>

【常用总结】用Python对数据结构进行个性化过滤操作

法1:列表推导式

法2:高阶函数

法3:循环遍历

# 法1:推导式 —— (过滤列表) 
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers)  # 输出 [2, 4, 6, 8, 10]# 法1:推导式 —— 过滤NumPy数组
import numpy as npnumbers = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
even_numbers = numbers[numbers % 2 == 0]
print(even_numbers)  # 输出 [2 4 6 8 10]# 法1:推导式 —— 过滤元组
numbers = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
even_numbers = tuple(x for x in numbers if x % 2 == 0)
print(even_numbers)  # 输出 (2, 4, 6, 8, 10)# 法1:字典推导式
scores = {'Alice': 85, 'Bob': 92, 'Charlie': 78, 'David': 95}
passed_students = { name: score for name, score in scores.items() if score >= 80}
print(passed_students)  # 输出 {'Alice': 85, 'Bob': 92, 'David': 95}# 法2:高阶函数 —— (过滤列表)
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 输出 [2, 4, 6, 8, 10]# 法2:高阶函数 —— (过滤字典)
students = [{'name': 'Alice', 'age': 20, 'grade': 'A'},{'name': 'Bob', 'age': 19, 'grade': 'B'},{'name': 'Charlie', 'age': 21, 'grade': 'A'},{'name': 'David', 'age': 18, 'grade': 'C'}
]# 过滤出年龄大于等于20岁的学生
filtered_students = list( filter(lambda student: student['age'] >= 19, students))
print(filtered_students)
# 输出: [{'name': 'Alice', 'age': 20, 'grade': 'A'}, {'name': 'Charlie', 'age': 21, 'grade': 'A'}]# 过滤出成绩为'A'的学生
filtered_students = list(filter(lambda student: student['grade'] == 'A', students))
print(filtered_students)
# 输出: [{'name': 'Alice', 'age': 20, 'grade': 'A'}, {'name': 'Charlie', 'age': 21, 'grade': 'A'}]# 法3:循环遍历 —— (过滤列表)numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = []
for num in numbers:if num % 2 == 0:even_numbers.append(num)
print(even_numbers)  # 输出 [2, 4, 6, 8, 10]# 法3:循环遍历 —— (过滤字典)scores = {'Alice': 85, 'Bob': 92, 'Charlie': 78, 'David': 95}
passed_students = {}
for name, score in scores.items():if score >= 80:passed_students[name] = score
print(passed_students)  # 输出 {'Alice': 85, 'Bob': 92, 'David': 95}

更多推荐

【常用总结】用Python对数据结构进行个性化过滤操作

本文发布于:2023-11-15 23:42:04,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1609777.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据结构   常用   操作   Python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!