推导式是Python中按照固定的条件表达式,自动生成数据的一种语法规则。
通过推导式,可以直接优化传统的通过循环结构和选择结构实现的列表操作,简化传统语法生成数据的规则或者过滤数据的规则。
目前,Python存在着三种推导式,分别为:列表推导式、字典推导式和集合推导式。其中,最常用的就是列表推导式。
列表推导式
推导式的概念并不是很难理解,所以说直接看案例代码,可以更加熟练。
首先,我们先来看一个简单的案例,用传统的列表循环方式实现数字1-10的平方。
num_list = list()
for i in range(1,11):
num_list.append(i**2)
print(num_list)
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
接下来使用推导式实现数字1-10的平方。
num_list = [x**2 for x in range(1,11)]
print(num_list)
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
通过代码的对比,我们可以发现,推导式语法确实十分简洁优雅,只需要一行的代码就可以实现Python的循环结构或选择结构,基本上任何可迭代的数据都可以在推导式内进行更新。
string = 'i love python'
# 将字符串按照空格分割成一个列表
lst = [ i for i in string.split('