python生成每个月最后一天_python 求下个月的最后一天

【1】根据当前月求上个月、下个月的最后一天

(1)求当前月最后一天

(2)求前一个月的最后一天

(3)求下一个月的最后一天

学习示例与应用实例,代码如下:

#!/usr/bin/python3

#-*- coding: utf-8 -*-

import datetime

import calendar

# 理论学习示例

print('理论学习示例')

time = datetime.date(2018, 12, 23) # 年,月,日

print('year : ' + str(time.year) + ' month : ' + str(time.month))

# 求当前月第一天

first_day = datetime.date(time.year, time.month, 1)

print ('当前月的第一天:' + str(first_day))

# 求当前月的最后一天

days_num = calendar.monthrange(first_day.year, first_day.month)[1] # 获取当前月有多少天

last_day_of_current_month = first_day + datetime.timedelta(days = days_num - 1) # 当前月的最后一天只需要days_num - 1 即可

print ('当前月最后一天:' + str(last_day_of_current_month))

# 求前一个月最后一天

pre_month = first_day - datetime.timedelta(days = 1) # timedelta是一个不错的函数

print ('前一个月最后一天:' + str(pre_month))

# 求前一个月的第一天

first_day_of_pre_month = datetime.date(pre_month.year, pre_month.month, 1)

print ('前一个月的第一天:' + str(first_day_of_pre_month))

# 求下个月的第一天

first_day_of_next_month = first_day + datetime.timedelta(days = days_num)

print ('下个月的第一天:' + str(first_day_of_next_month))

# 求下个月的最后一天

next_month_days = calendar.monthrange(first_day_of_next_month.year, first_day_of_next_month.month)[1] # 获取下个月有多少天

next_month = first_day_of_next_month + datetime.timedelta(days = next_month_days - 1)

print ('下个月最后一天:' + str(next_month))

print('\n')

# 应用实例

print('应用实例')

cycleid = "

print('cycleid_year : ' + str(cycleid[0:4]) + ' cycleid_month : ' + str(cycleid[4:6]))

month = int(cycleid[4:6])

print("month : " + str(month))

first_day_of_current_cycleid = datetime.date(int(cycleid[0:4]), int(cycleid[4:6]), 1)

print("first_day : " + str(first_day_of_current_cycleid))

def getNextCycleidFirstDay() :

first_day_of_current_cycleid = datetime.date(int(cycleid[0:4]), int(cycleid[4:6]), 1)

days_num = calendar.monthrange(first_day_of_current_cycleid.year, first_day_of_current_cycleid.month)[1]

first_day_of_next_cycleid = first_day_of_current_cycleid + datetime.timedelta(days = days_num)

return first_day_of_current_cycleid, first_day_of_next_cycleid

current_fd, next_fd = getNextCycleidFirstDay()

print("current_fd : " + str(current_fd) + " next_fd : " + str(next_fd))

'''

理论学习示例

year : 2018 month : 12

当前月的第一天:2018-12-01

当前月最后一天:2018-12-31

前一个月最后一天:2018-11-30

前一个月的第一天:2018-11-01

下个月的第一天:2019-01-01

下个月最后一天:2019-01-31

应用实例

cycleid_year : 2019 cycleid_month : 12

month : 12

first_day : 2019-12-01

current_fd : 2019-12-01 next_fd : 2020-01-01

'''

Good Good Study, Day Day Up.

顺序 选择 循环 总结

使用python求字符串或文件的MD5

使用python求字符串或文件的MD5 五月 21st, 2008 #以下可在python3000运行. #字符串md5,用你的字符串代替'字符串'中的内容. import hashlib md5=h ...

python求微分方程组的数值解曲线01

本人最近在写一篇关于神经网络同步的文章,其一部分模型为: x_i^{\Delta}(t)= -a_i*x_i(t)+ b_i* f(x_i(t))+ \sum\limits_{j \in\{i-1, ...

Python 求点到直线的垂足

Python 求点到直线的垂足 在已知一个点,和一条已知两个点的直线的情况下 运算公式参考链接:https://www.cnblogs.com/mazhenyu/p/3508735.html def ...

python求100以内素数

python求100以内素数之和 from math import sqrt # 使用isPrime函数 def isPrime(n): if n <= 1: return False for ...

Python 求两个文本文件以行为单位的交集 并集 差集

Python 求两个文本文件以行为单位的交集 并集 差集,来代码: s1 = set(open('a.txt','r').readlines()) s2 = set(open('b.txt','r') ...

python求极值点(波峰波谷)

python求极值点主要用到scipy库. 1. 首先可先选择一个函数或者拟合一个函数,这里选择拟合数据:np.polyfit import pandas as pd import matplotli ...

python 求MD5值

(一)求字符串的MD5值 import hashlib #导入功能模块,此模块有MD5,SHA1,SHA256等方法 m = hashlib.md5() #声明一个对象 m.update(b'hell ...

python求线性回归斜率

一. 先说我对这个题目的理解 直线的x,y方程是这样的:y = kx+b, k就是斜率. 求线性回归斜率, 就是说 有这么一组(x, y)的对应值——样本.如果有四组,就说样本量是4.根据这些样本,做 ...

Python求阴影部分面积

一.前言说明 今天看到微信群里一道六年级数学题,如下图,求阴影部分面积 看起来似乎并不是很难,可是博主添加各种辅助线,写各种方法都没出来,不得已而改用写Python代码来求面积了 二.思路介绍 1.用 ...

随机推荐

Manifesto – HTML5 离线应用程序缓存校验工具

Manifesto 是一个 HTML5 离线应用程序缓存校验工具,提供了快速校验 HTML5 manifest 文件有效性的方法.离线应用程序缓存在使用中最困难的部分之一就是无法正常工作的时候没有明显 ...

java final方法的作用

1. 不想让别人修改方法实现. 2. 在方法调用时使用内嵌调用. 3. 有效的“关闭”动态绑定,这样编译器就可以为final方法调用生成更有效的代码. Java编程思想: “然而,大多数情况下,这样做 ...

求解,ASP&period;Net MVC Redirect 无法跳转问题

①JS代码 $.post("/Home/CheckLogin", { "username": $("#username").val(), & ...

安装微软ASP&period;NET MVC 4,运行以下的包管理器控制台命令

(菜鸟,勿喷,有错求指正)Asp.net  新建的类库中安装MVC4  .下面是步骤,1+2:打开程序包管理控制台,3:运行Install-Package Microsoft.AspNet.Mvc - ...

mysqldump 的一些使用参数

备份数据库#mysqldump 数据库名 >数据库备份名 #mysqldump -A -u用户名 -p密码 数据库名>数据库备份名 #mysqldump -d -A --add-drop- ...

vue-router自动判断左右翻页转场动画

前段时间做了一个移动端spa项目,技术基于 :vue + vue-router + vuex + mint-ui 因为使用了vue-cli脚手架的webpack模版,所有页面都以.vue为后缀的文件作 ...

SpringBoot添加CORS跨域

配置CORSConfiguration 添加CORS的配置信息,我们创建一个CORSConfiguration配置类重写如下方法,如图所示: @Override public void addCors ...

CF341E Candies Game

题目链接 题意 有\(n\)个盒子,第\(i\)个盒子里面有\(a_i\)个糖果.每次选择两个盒子\(i,j\),假设\(a_i \le a_j\).然后从第\(j\)个盒子中拿出\(a_i\)个糖果 ...

【转】python3实现自动化框架robotframework

由于python2只更新到2020年,python3是未来的主流,为了适应技术的变化python3实现robotframework是迟早的事 1.下载最新版本的python3.7,可根据自己电脑的位数 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值