1
我都提到了这个问题,在论坛上这样做: Using a string as a variable at run time为什么我不能转换的inputed字符串到变量
这是我有:
def create_account
puts "Username?"
account_name=gets.chomp
account_name_var=#account_name as variable
#Sets array as variable
string_values = { }
some_string = [:some_string] # parameter was, say "Hello"
string_values[some_string] = account_name
string_values # { 'Hello' => 42 }
account_name_var = string_values[some_string]
account_name_var # 42
account_name_var=BankAccount.new(account_name, "open")
account_name_var=BankAccount.new(account_name, "open")
end
create_account
create_account
# pablo=BankAccount.new("pablo", "open")
# theo=BankAccount.new("theo", "open")
make_transfer(name, name2, 10)
,但我得到
:用于主未定义局部变量或方法名称:对象 (NameError)就行了make_transfer(姓名,NAME2 10)
。
因此,当我输入name
作为第一个用户名和name2
作为第二个用户名时,name
未被设置为变量。
如果你输入什么'foobar的'作为第一个用户名?你是否期望代码文件奇迹般地改变以反映这种意想不到的输入? –