我正在考虑使用RStudio在我的代码中进行一些用户交互。但是,我在命令行的行为与readline()
函数一起遇到了一些问题。这是一个说明我的问题的例子:
x <- 2
y <- 2
if (x == 2) { x <- readline("Put your x here: ")
} else { x <- 3 }
if (y == 2) { print("Something.")}
如果我突出显示并点击“run”(或结尾处的ctrl-alt-b)在命令行中逐行运行,我会在命令行中显示此处显示的意外行为:
> x <- 2
> y <- 2
> if (x == 2) { x <- readline("Put your x here: ")
+ } else { x <- 3 }
Put your x here: if (y == 2) { print("Something.")}
请注意,在第5行,它会跳过“Put your x here:”提示(我没有输入任何内容)并继续到下一行。但是请注意,当我“获取”此代码时,问题不会发生,命令行会按预期运行(提示我并等待直到我输入内容)。
总的来说,这是一个小问题,但出于测试目的,能够运行我的用户交互代码而不必获取整个文件将是一个重大帮助。提前谢谢!