首页 > 编程知识 正文

廖雪峰python教程,廖雪峰的网站python

时间:2023-05-06 10:44:07 阅读:255202 作者:2777

今天主要学习了python中filter的用法。Python内建的filter()函数主要用于过滤序列,和map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

做了两道练习题,第一道是用filter求素数。第二道是用filter()筛选出回数。

@Python代码如下: # -*- coding: utf-8 -*-# @Time :2018/6/27# @Author :ShiChao# title :1、筛选素数;2、筛选回文# 输出素数:'''def _odd_iter(): #列出所有的奇数 n = 1 while True: n += 2 yield ndef not_sushu(): return lambda x:x % n > 0def primes(): yield 2 it = _odd_iter() while True: n = next(it) yield n it = filter(not_sushu(),it)for n in primes(): if n < 100: print(n) else: break'''# 筛选回文def is_palindrome(n): temp1 = str(n) if temp1 == temp1[::-1]: return n else: return False# 其实两行代码就可以搞定def is_palindrome(n): temp1 = str(n) return temp1 == temp1[::-1]output = filter(is_palindrome, range(1, 100))print('1~100:', list(output))

很简单的东西,没什么学习价值,就当自己的练手。欢迎交流欢迎指正!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。