gpt4 book ai didi

ruby - 如何循环数字+过去X年的月份和日期?

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

我需要用数字遍历过去几十年的所有日期和月份,并为每个日期指定月份和日期的名称。显然几个系列的循环可以完成这个,但我想知道最简洁的类似 ruby​​ 的方法来完成这个。

基本上,过去 X 年的每一天我都需要这样的输出:

3 January 2011 and 1/3/2011

什么是最干净的方法?

最佳答案

日期可以用作一个范围,因此在一个范围内迭代相当容易。唯一真正的技巧是如何将它们输出为格式化字符串,这可以在 Date#strftime 方法中找到,该方法已记录在案 here .

from_date = Date.new(2011, 1, 1)
to_date = Date.new(2011, 1, 10)

(from_date..to_date).each { |d| puts d.strftime("%-d %B %Y and %-m/%-d/%Y") }

# => 1 January 2011 and 1/1/2011
# => 2 January 2011 and 1/2/2011
# => ...
# => 9 January 2011 and 1/9/2011
# => 10 January 2011 and 1/10/2011

(注意:我记得以前遇到过一些不幸的方法,比如 Windows 中的 %-d 等未填充的百分比格式,但如果以上方法不起作用,你希望在该环境中取消填充它们,您可以删除破折号并使用您自己的解决方法。)

关于ruby - 如何循环数字+过去X年的月份和日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9246650/

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