我们可以在Julia中使用用户输入来分配变量吗


ans=readline(stdin)
function g(n)
if ans==a
return 1
else
return n
end

这是我的代码,但readline函数只接受字符串,我希望它接受一个可以在函数中使用的表达式。我想要的是为变量ans.分配一个表达式(a(

你可以试试这样的东西:

julia> function check(x)
ans = readline()
val=Main.eval(Meta.parse(ans))
println("val == $x :", val==x)
end;
julia> check(5)
2+3
val == 5 :true

备注:

  1. 函数不应引用全局变量(如示例中的ans(-如果需要获取ans的值,请将其作为参数传递
  2. 解析表达式是不安全的-例如,用户可能希望使用此功能删除数据。小心使用!在某些场景中,您可能希望使用正则表达式来验证用户的输入

最新更新