📜  循环python的简写(1)

📅  最后修改于: 2023-12-03 15:09:52.023000             🧑  作者: Mango

循环Python的简写

Python提供了多种简便方法来编写循环语句。这些方法包括列表推导式、生成器表达式、map()函数、filter()函数等。

列表推导式

列表推导式是在列表中创建新列表的快捷方式。可以使用它来循环遍历一个序列,并在一个表达式中对每个元素执行一些操作,然后返回一个新的列表。

# 使用列表推导式将所有大写字母转换为小写字母
>>> [x.lower() for x in ['A', 'B', 'C', 'D']]
['a', 'b', 'c', 'd']

# 使用列表推导式计算1到10的平方和
>>> sum([x*x for x in range(1, 11)])
385
生成器表达式

生成器表达式是一个类似于列表推导式的表达式,但不会创建一个实际的列表。它返回一个生成器对象,该对象可以用于迭代。

# 使用生成器表达式计算1到10的平方和
>>> sum(x*x for x in range(1, 11))
385

# 使用生成器表达式过滤出所有偶数
>>> [x for x in range(1, 11) if x % 2 == 0]
[2, 4, 6, 8, 10]
map()函数

map()函数是对序列中的每个元素执行相同操作,并返回一个新的序列。它接受两个参数:一个函数和一个可迭代对象。

# 使用map()函数将所有大写字母转换为小写字母
>>> list(map(str.lower, ['A', 'B', 'C', 'D']))
['a', 'b', 'c', 'd']

# 使用map()函数计算1到10的平方
>>> list(map(lambda x: x*x, range(1, 11)))
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
filter()函数

filter()函数用于过滤序列中的元素,并返回一个新的序列。它接受两个参数:一个函数和一个可迭代对象。

# 使用filter()函数过滤出所有偶数
>>> list(filter(lambda x: x % 2 == 0, range(1, 11)))
[2, 4, 6, 8, 10]

# 使用filter()函数过滤出所有大于5的数
>>> list(filter(lambda x: x > 5, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
[6, 7, 8, 9]

总结:Python提供了多种简便方法来编写循环语句。使用这些方法可以让代码更加简洁、优雅,并且提高代码的可读性。