在对嵌套hashmap-ruby的一行调用中使用get.chomp两次
对于下面的示例,使用get.chop的最佳方法是什么在对嵌套hashmap-ruby的一行调用中使用get.chomp两次,ruby,hashmap,chomp,Ruby,Hashmap,Chomp,对于下面的示例,使用get.chop的最佳方法是什么 user = {} user["list"] = [ {gets.chomp => {gets.chomp.delete(' ') => rand(1000000000000)} } ] 我能想到: a = gets.chop ; b = a.delete(' ') ; user["list"] = [ {a => {b => rand(1000000000000)} } ] 但也许有更好的办法 有什么想法吗?我能
user = {}
user["list"] = [ {gets.chomp => {gets.chomp.delete(' ') => rand(1000000000000)} } ]
我能想到:
a = gets.chop ; b = a.delete(' ') ; user["list"] = [ {a => {b => rand(1000000000000)} } ]
但也许有更好的办法
有什么想法吗?我能在不创建变量a和b的情况下完成吗?您必须设置一个变量,以便在两个不同的位置使用输入。尽管可以将其压缩为以下内容:
user[“list”]=[{a=gets.chomp=>{a.delete('''=>rand(1000000000000)}}]
出于某种原因,我想如果我在字典中使用a=gets.chomp
,则不会保存gets.chomp
的值。。。但是不,这是有效的。。。我只是希望有一种不使用变量的方法来实现这一点。如果您可以在从命令行运行脚本时输入它(ruby myscript.rb input
),那么您可以通过以下方式访问输入:user[“list”]=[{ARG[0]。chomp=>{ARG.shift.chomp.delete('=>rand(1000000000000)}]
有趣!我要玩一玩。我在考虑像.storevariable
这样的东西,所以获取.chomp.storevariable
被保存为storevariable
,然后可以编辑它。。。