


今天的基础篇内容讲解奇妙的列表推导式的基本知识,大家这么聪明,一看就会了。
列表推导式:高效简洁的代码,本质是把几行循环压缩成一行的“语法糖”,用好了非常惊艳。
注意:虽然列表推导式用的很爽,但逻辑如果太复杂(比如嵌套了三四层循环),为了可读性,还是老老实实写循环吧。毕竟代码不仅要给机器跑,也要给人看。

1. 最基础用法-创建列表、字典
# 1. 生成1-10的平方列表squares = [x**2 for x in range(1, 11)]print("平方列表:", squares) # 输出: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]# 2. 带条件筛选:生成1-10中的偶数列表evens = [x for x in range(1, 11) if x % 2 == 0]# 3. 生成1-10的平方字典squares_dict = {x:x**2 for x in range(1,11)}
2. 数据清洗过滤:这是最常见的场景。比如你抓取了一堆话题的阅读量数据,想快速筛选出阅读量超过阈值的热门话题。
# ---传统写法要写4行hot_topics = []for item in data:if item['views'] > 1000: # 阅读量>1000hot_topics.append(item['title'])# ---列表推导式只需1行hot_topics = [item['title'] for item in data if item['views'] > 1000]
3. 快速格式转换
tags = ["AI", "GPT", "Midjourney"]# 生成带#和字母小写的标签列表formatted_tags = [f"#{tag.lower()}" for tag in tags]# 输出: ['#ai', '#gpt', '#midjourney']
4. 文件名批处理
# ---快速筛选出图片文件import osfiles = os.listdir('./assets')images = [f for f in files if f.endswith(('.png', '.jpg'))]



总结:今日我们学习了Python基础篇-奇妙的列表推导式:作为一种优雅的“语法糖”,它将传统的多行循环与条件判断逻辑浓缩于一行代码之中,展现出极高的简洁性。我们重点掌握了其在数据过滤、格式转换等场景的妙用,体会了从冗余代码到“一行流”的质变。在Python基础篇,后续我们将持续学习Python基础知识,祝每一位study er学习愉快。




