如何将回车键作为用户输入,实现按下回车后for循环才进入下一个迭代
解决你的R语言循环暂停问题
嘿,这问题我熟!你遇到的核心点是:当你在控制台按下回车键时,readline()函数返回的是空字符串(""),而不是你写的"ENTER"。所以只要把判断条件改成检查输入是否为空就行啦~
修改后的代码如下:
for (i in 1:5){ print(i) UserInput <- readline(prompt = "Press enter to continue.") # 如果用户输入了任何内容(不是纯回车),就跳出循环 if (UserInput != ""){ break } }
简单解释下:
- 每次迭代先打印当前的
i - 然后等待用户输入,提示文字保持不变
- 只有当用户只按回车键(此时
UserInput是空字符串),循环才会继续到下一个i;如果用户输入了任何字符再回车,就会触发break终止循环
如果你想更严谨一点,也可以用nchar(UserInput) > 0来判断(检查输入的字符数大于0),效果是完全一样的~
内容的提问来源于stack exchange,提问作者Andreas Massey
相关产品推荐
相关产品推荐

