gpt4 book ai didi

Ruby - 无法总结哈希值

转载 作者:数据小太阳 更新时间:2023-10-29 07:51:52 24 4
gpt4 key购买 nike

我是 Ruby(和一般编程)的新手。我有一个使用外部文件数据的散列,我正在尝试获取大于 1500 的值的总数。

Here's my code其实我既需要条目数,也需要1500以上的采购订单的总值(value)。外部文件只是一列订单号和一列价格。我确定有一个非常简单的解决方案,但就像我说的,我是初学者,无法弄清楚。任何帮助,将不胜感激。谢谢。

编辑:这是我的代码。只是最后一个 while 循环导致了所有问题。我知道这不是解决问题的正确方法,但我不知道该怎么做。

myhash={}

file=File.open("Purchase Orders.csv", "r")
while !file.eof
line=file.readline

key,value=line.chomp.split(",")
myhash[key]=value
end

total=0
entries=myhash.length
newtotal=0

myhash.each { |key,value|
total+=value.to_f
}
puts total
puts entries

while value.to_f>1500
myhash.each {|key,value| newtotal+=value.to_f}
end

puts newtotal

最佳答案

我将以 ruby​​ 惯用的方式重写代码,希望您能检查它并找到一些提示。

prices = File.readlines("Purchase Orders.csv").map do |line|
line.chomp.split(",").last.to_f
end # array of prices

total = prices.inject(:+) # sum values
pricy = prices.select { |v| v > 1500 }

pricy_sum = pricy.inject(:+) # sum expensives
pricy_count = pricy.length # expensives’ size

puts "Total sum is: #{total}"
puts "Total expensives is: #{pricy}"

关于Ruby - 无法总结哈希值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40626917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com