在处理某些问题时,我遇到一种情况,我想知道某个函数在被调用时是否已执行。为此,我在函数中添加了一条打印语句。
abc = function(x)
if(x > 0) {
return(x)
print("Go")
} else {
return(0)
print("Run")
}
y = abc(3)
y
# [1] 3
为什么调用abc()时不执行print语句?
答案 0 :(得分:1)
那是因为您在return
之前先print
。更改这两个语句的顺序,它应该打印
abc = function(x) {
if(x > 0) {
print("Go")
return(x)
} else {
print("Run")
return(0)
}
}
abc(3)
#[1] "Go"
#[1] 3
abc(-3)
#[1] "Run"
#[1] 0