将分配的变量的名称获取到函数中的参数

Getting the name of the assigned variable to an argument in a function

我想声明已分配给函数参数的变量。函数更复杂,但下面是一个示例场景,我希望函数 return 变量的名称:x

例如

x <- 3
my_function <- function(arg1) {print(arg1)}

其中:my_function(x) 将 return x

并且:my_function(y) 将 return y

这可能吗?

使用substitute到return一个symbol对象。如果我们在 substitute 上用 deparse 换行,它 return 就是 character

my_function <- function(arg1) substitute(arg1)

-测试

> my_function(x)
x
> my_function(y)
y