识别纯函数
纯函数需同时满足两个条件:
- 输出只取决于输入:给定相同输入,输出始终相同。
- 没有副作用,也就是说,不会对函数外部产生影响。
R 中有许多函数并非纯函数,但在日常使用 R 时非常重要:做分析时,您需要下载文件、绘图、保存结果……
编程时,您应尽量让函数要么尽可能"纯",要么就明确"非纯"(例如,一个下载文件的函数就只负责下载该文件)。但在此之前,您需要先能区分纯函数与非纯函数。
本练习将带您分别运行纯函数与非纯函数,并观察它们的输出。
本练习是课程的一部分
使用 purrr 的函数式编程进阶
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Launch Sys.time(), Sys.sleep(1), & Sys.time()
___()
___(___)
___()