gpt4 book ai didi

ruby - 多少天?

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

我需要根据三个参数计算在地球上生活了多少天:日、月和年。我不知道如何将输入转换为日期;然后如何将日期转换为天数。这是我目前的代码...

require 'date'
def age_in_days(day, month, year)
lived = (day+"-"+month+"-"+year).to_s
date_lived Date.parse(lived)
return (Date.today - date_lived).to_i
end

最佳答案

您可以创建一个 Date直接对象:

Date.new(year, month, day)

无需将其转换为字符串并进行解析。解析也可能是危险的。 1982-04-02 是 2 月 4 日还是 4 月 2 日?

顺便说一句,您不能像这样添加数字和字符串。 1 + '2' 应该是 '12' 还是 3? Ruby 无法为您做决定,因此您需要将整数显式转换为字符串。

day.to_s + "-" + month.to_s + "-" + year.to_s

或者只是

[day, month, year].join('-')

但你并不需要它:

require 'date'

def age_in_days(day, month, year)
birthdate = Date.new(year, month, day)
(Date.today - birthdate).to_i
end

关于 ruby - 多少天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56950019/

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