CS 61A 2020 Fall Disc 02: Higher-Order Functions, Self Reference

本文探讨了如何使用高阶函数实现条件判断打印、延迟打印等功能。通过实例解析环境图的绘制,并讲解如何创建返回新函数的函数。同时,介绍了自我引用的概念,以及如何构造一个可以重复打印n次后结束的函数。
摘要由CSDN通过智能技术生成

1.1 Write a function that takes in a function cond and a number n and prints numbers from 1 to n where calling cond on that number returns True. (需讨论)

def keep_ints(cond, n):
"""Print out all integers 1..i..n where cond(i) is true
>>> def is_even(x):
... # Even numbers have remainder 0 when divided by 2.
... return x % 2 == 0
>>> keep_ints(is_even, 5)
2
4
"""
    i = 1
    while i < n:
        if cond(i):
            print(i)
    i += 1


1.2 Tutorial: Write a function similar to keep_ints like before, but now it takes in a number n and returns a function that has one parameter cond. The returned function prints out numbers from 1 to n where calling cond on that number returns True.

def make_keeper(n):
"""Returns
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值