gpt4 book ai didi

ruby-on-rails - Ruby - 如何将数组与 Date.strptime 一起使用

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

如果我尝试将单个字符串转换为日期,它会起作用。

    require 'date'

a=String.new
a='20171023'
puts b=Date.strptime(a,'%Y%m%d')
puts b.yday()

如何让它与数组一起工作?我试过这种方式。

    require 'date'

a=[20160106, 20132018, 20011221]
b=a.each{|a| Date.strptime(a, '%Y%m%d').yday()}
puts b

最佳答案

您需要传递一个字符串,而不是像现在这样传递一个整数:

a = ['20160106', '20130218', '20011221']

如果要将每个操作的结果存储在b中,那么可以使用map代替each:

b = a.map { |date| Date.strptime(date, '%Y%m%d') }

你的第二个日期无效,我猜是 20130218

require 'date'

a = %w[20160106 20130218 20011221]
b = a.map { |date| Date.strptime(date, '%Y%m%d').yday }
p b # [6, 49, 355]

%w[ ... ] 是一个字符串数组,您可以在其中避免使用引号和逗号。

当您不需要将参数传递给方法调用时,可以避免使用括号。

关于ruby-on-rails - Ruby - 如何将数组与 Date.strptime 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49579994/

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