从readline()函数

时间:2016-06-07 21:22:56

标签: r command-line-interface user-input

我希望用户能够输入代码并执行它。我可以想到一个非常低效的解决方案:

code <- readline("Enter code > ")
write(code, "code.R")
source("code.R")

有没有更好的方法来实现这一目标?

1 个答案:

答案 0 :(得分:1)

您可以使用textConnection,这是一个演示:

code <- readline("Enter code > ")
Enter code > df <- data.frame(x = 1:3)

source(textConnection(code))

df
  x
1 1
2 2
3 3

或使用eval(parse(text = code))

eval(parse(text = code))

df
  x
1 1
2 2
3 3