1

假设一个店主想知道他的产品在世界各地的销售情况,以及哪些产品在哪里卖得最好。

他有以下数据:|ID、货币、数量、位置|

不是遍历每种货币的数据(数据集> 10,000),有没有办法将数据放入特定于货币的数组中而无需明确指定......即,有没有办法避免

if curr == "USD"; USDid << ID; USDquan << Quantity
elsif...

...等等?出于本问题的目的,假设 *id 和 *quan 数组存在于所观察的货币中。

是否有某种正则表达式技巧可以查看货币并将数据放入适当的数组中?

4

1 回答 1

1

是的。使用数组的哈希而不是多个数组:

sale_data = {}
sale_data.default = {"ID" => [], "Quantity" => [], "Location" => []}
# Later...
sale_data[curr]["ID"] << ID; sale_data[curr]["Quantity"] << quan; #Etc..

default=调用使您可以根据需要分配任意数量的货币,而无需预先定义它们。因此,在您的代码中的任何地方,如果没有先前的条目,例如 USD,当您添加数据时,就会创建一个。

于 2013-02-12T23:19:03.003 回答