求剧情
R的极客理想——高级开发篇 · 第十三节

《R的极客理想——高级开发篇》第十三节

本节介绍R语言的环境空间。环境是内核定义的层次化框架,变量、对象、函数都存在于其中,具有唯一命名、引用类型、有父环境(顶层为空环境)、子环境继承父环境等特征。

本节介绍R语言的环境空间。环境是内核定义的层次化框架,变量、对象、函数都存在于其中,具有唯一命名、引用类型、有父环境(顶层为空环境)、子环境继承父环境等特征。可用new.env创建环境,用search、递归父环境等方式查看层次结构,从当前环境一直追溯到空环境,也能看出包的加载顺序。同名变量可存在于不同环境,但同一环境内不可重复;环境赋值是引用传递;用<<-可修改父环境的变量。文中还列出了is.environment、environment、ls、get、assign等常用函数。

后半部分讲函数的环境空间,分四类:封闭环境(定义时确定,与运行时无关)、绑定环境(函数名与定义的绑定)、运行环境(调用时临时创建,运行结束即销毁,故函数内变量每次都是新值)、调用环境(函数在何处被调用)。通过示例说明匿名函数取用封闭环境中的变量,以及<<-对父环境变量的赋值影响,最后用示意图汇总了包环境、命名函数、匿名函数、变量与调用关系。

‹ 上一章目录下一章 ›

全部 27 章