python 获取当前月份月初日期和月末日期

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 获取当前月份月初日期和月末日期相关的知识,希望对你有一定的参考价值。

使用time模块的time.localtime()获取当前日期,使用calendar模块calendar.monthrange的来获取指定月份的天数。即可得到月初日期和月末日期,代码如下:

import calendar
import time
day_now = time.localtime()
day_begin = \'%d-%02d-01\' % (day_now.tm_year, day_now.tm_mon)  # 月初肯定是1号
wday, monthRange = calendar.monthrange(day_now.tm_year, day_now.tm_mon)  # 得到本月的天数 第一返回为月第一日为星期几(0-6), 第二返回为此月天数
day_end = \'%d-%02d-%02d\' % (day_now.tm_year, day_now.tm_mon, monthRange)
print(\'月初日期为:\',day_begin, \'月末日期为:\',day_end)

效果如下:

参考技术A #!/usr/bin/env python
# --*-- coding:utf-8 --*--
import calendar
day_now = '20150222' #给定日期
day_begin = day_now[0:6]+'01' #月初肯定是1号 所以 直接替换 就可以
monthRange = calendar.monthrange(int(day_now[0:3]),int(day_now[4:6]))#得到本月的天数
day_end = day_now[0:6]+str(monthRange[1])
print day_now,'月初日期为:',day_begin, '月末日期为:',day_end

本回答被提问者和网友采纳

JavaScript日期集合(今日,昨日,本周一,周末 ,月初,月末)


一、封装为jQuery版日期集合插件

jQuery.dateCollections = (function(){

    var nowDate = new Date();
    var cloneNowDate = new Date();

    var fullYear = nowDate.getFullYear();
    var month = nowDate.getMonth() + 1; // getMonth 方法返回 0-11,代表1-12月
    var date = nowDate.getDate();

    var endOfMonth = new Date(fullYear, month, 0).getDate(); // 获取本月最后一天

    // 格式化日期 (2016-02-14)
    function getFullDate(targetDate) {
        var D, y, m, d;
        if (targetDate) {
            D = new Date(targetDate);
            y = D.getFullYear();
            m = D.getMonth() + 1;
            d = D.getDate();
        } else {
            y = fullYear;
            m = month;
            d = date;
        }
        m = m > 9 ? m : ‘0‘ + m;
        d = d > 9 ? d : ‘0‘ + d;

        return y + ‘-‘ + m + ‘-‘ + d;
    }

    // 一天的时间戳(毫秒为单位)
    var timestampOfDay = 1000*60*60*24;

    // 今天,昨天
    var fullToday = getFullDate();
    var fullYesterday = getFullDate(nowDate - timestampOfDay);

    var nowDay = nowDate.getDay(); // getDay 方法返回0 表示星期天
    nowDay = nowDay === 0 ? 7 : nowDay;

    // 本周一,本周末(星期天)
    // 注:在safari下(nowDate +- 0)不会转换为时间戳,这里在nowDate前加上运算符+,手动转换时间戳运算
    var fullMonday = getFullDate( +nowDate - (nowDay-1)*timestampOfDay );
    var fullSunday = getFullDate( +nowDate + (7-nowDay)*timestampOfDay );

    // 月初,月末
    var fullStartOfMonth = getFullDate( cloneNowDate.setDate(1) );
    var fullEndOfMonth = getFullDate( cloneNowDate.setDate(endOfMonth) );

    return {
        fullToday: fullToday,
        fullYesterday: fullYesterday,
        fullMonday: fullMonday,
        fullSunday: fullSunday,
        fullStartOfMonth: fullStartOfMonth,
        fullEndOfMonth: fullEndOfMonth
    };

}());

 

二、封装为模块,可用于webpack工具打包

 

var nowDate = new Date();
var cloneNowDate = new Date();

var fullYear = nowDate.getFullYear();
var month = nowDate.getMonth() + 1; // getMonth 方法返回 0-11,代表1-12月
var date = nowDate.getDate();

var endOfMonth = new Date(fullYear, month, 0).getDate(); // 获取本月最后一天

// 格式化日期 (2016-02-14)
function getFullDate(targetDate) {
    var D, y, m, d;
    if (targetDate) {
        D = new Date(targetDate);
        y = D.getFullYear();
        m = D.getMonth() + 1;
        d = D.getDate();
    } else {
        y = fullYear;
        m = month;
        d = date;
    }
    m = m > 9 ? m : ‘0‘ + m;
    d = d > 9 ? d : ‘0‘ + d;

    return y + ‘-‘ + m + ‘-‘ + d;
}

// 一天的时间戳(毫秒为单位)
var timestampOfDay = 1000*60*60*24;

// 今天,昨天
var fullToday = getFullDate();
var fullYesterday = getFullDate(nowDate - timestampOfDay);

var nowDay = nowDate.getDay(); // getDay 方法返回0 表示星期天
nowDay = nowDay === 0 ? 7 : nowDay;

// 本周一,本周末(星期天)
// 注:在safari下(nowDate +- 0)不会转换为时间戳,这里在nowDate前加上运算符+,手动转换时间戳运算
var fullMonday = getFullDate( +nowDate - (nowDay-1)*timestampOfDay );
var fullSunday = getFullDate( +nowDate + (7-nowDay)*timestampOfDay );

// 月初,月末
var fullStartOfMonth = getFullDate( cloneNowDate.setDate(1) );
var fullEndOfMonth = getFullDate( cloneNowDate.setDate(endOfMonth) );

module.exports = {
    fullToday: fullToday,
    fullYesterday: fullYesterday,
    fullMonday: fullMonday,
    fullSunday: fullSunday,
    fullStartOfMonth: fullStartOfMonth,
    fullEndOfMonth: fullEndOfMonth
};

 

以上是关于python 获取当前月份月初日期和月末日期的主要内容,如果未能解决你的问题,请参考以下文章

怎么用jQuery 根据系统时间获得这个月的月初和月末呢。谢谢!

Shell判断日期是不是是月末

如何在SHELL获取当天时间的月份和上个月的月份还有下个月的月份

JavaScript日期集合(今日,昨日,本周一,周末 ,月初,月末)

如果日期是月初,则获取当前周的所有日期返回不正确

前端传月份自动识别月初,月末