如何解决我们可以使用用户输入在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
备注:
- 您的函数不应引用全局变量(例如您的示例中的
ans
)-如果需要获取ans
的值,请将其作为参数传递。 - 解析表达式是不安全的-例如,用户可能希望使用此功能来删除您的数据。小心使用!在某些情况下,您可能需要一个示例使用正则表达式来验证用户的输入。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。