8个超好用的内置函数set(),eval(),sorted(),reversed(),map(),reduce(),filter(),enumerate()
python中有许多内置函数,不像print那么广为人知,但它们极其强大,使用得当可以大大提高代码效率。
这一次,我们将梳理8个易用的python内置函数
1、set()
当需要重新操作列表时,set()函数派上用场。
用于创建集合,集合中的元素无序且不重复。创建集合对象后,还可以使用并集、交集和差集功能。
2、eval()之前有人问如何用python写四个运算器,输入字符串公式,直接产生结果。用eval()很简单:eval(str_expression)其功能是将字符串转换为表达式并执行。
3、sorted()在处理数据的过程中,我们经常使用排序操作,如正/倒排列列表、字典和元组中的元素。此时,需要使用sorted() ,它可以对任何可迭代对象进行排序,并返回列表。列表升序操作:
元组倒序操作:
使用参数:key,根据自定义规则,按字符串长度进行排序:
按照自定义规则,对元组组成的列表进行排序:
4、reversed()如果需要逆转序列元素,reversed()函数可以帮助你。reversed()接受序列,逆转序列中的元素,最终返回迭代器。
5、map()文本处理时,如果要对序列中的每个单词进行大写转换。此时可以使用map()函数。
map()将根据提供的函数映射指定的序列,并最终返回迭代器。也就是说,map()函数将以指定的方式处理序列中的每个元素,并最终返回到您处理的序列。例如,列表中的每个数字都是方形的:
6、reduce()正如前面提到的,使用map()函数处理列表中的每个数字。然后我想乘以列表中的每个元素。我该怎么办?此时,使用reduce()函数。
reduce()将在参数序列中积累元素。首先,第二个元素进行函数操作,然后与第三个元素进行函数操作,以此类推,最终生成所有元素积累操作的结果。再举一个例子,将字母连接成字符串。
你可能已经注意到了,reduce()函数不再是python3中的内置函数,而是迁移到functools模块。在这里,我们提出reduce()函数,因为它太重要了。
7、filter()一些由数字组成的列表应该如何去除偶数?
filter()函数轻松完成任务,用于过滤序列,过滤掉不合格元素,返回迭代器对象。filter()函数和map()、reduce()函数相似,将序列中的每个元素映射到函数中,最终返回结果。让我们再试一次,如何从许多单词中挑选包含字母w的单词。
8、enumerate()这样的场景,同时打印出序列中每个元素及其对应的序列号,我们用enumerate()函数来看。
enumerate的翻译意味着枚举和列举,因此enumerate()函数用于顺序标记序列中的元素,并返回由(元素和索引)组成的迭代器。再举一个例子,标记字符串,返回每个字母及其索引。