前言

最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧。

示例代码:

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

'''获取当前日期前后N天或N月的日期'''

from time import strftime, localtime

from datetime import timedelta, date

import calendar

year = strftime("%Y", localtime())

mon = strftime("%m", localtime())

day = strftime("%d", localtime())

hour = strftime("%H", localtime())

min = strftime("%M", localtime())

sec = strftime("%S", localtime())

def today():

'''''

get today,date format="YYYY-MM-DD"

'''''

return date.today()

def todaystr():

'''

get date string, date format="YYYYMMDD"

'''

return year + mon + day

def datetime():

'''''

get datetime,format="YYYY-MM-DD HH:MM:SS"

'''

return strftime("%Y-%m-%d %H:%M:%S", localtime())

def datetimestr():

'''''

get datetime string

date format="YYYYMMDDHHMMSS"

'''

return year + mon + day + hour + min + sec

def get_day_of_day(n=0):

'''''

if n>=0,date is larger than today

if n<0,date is less than today

date format = "YYYY-MM-DD"

'''

if (n < 0):

n = abs(n)

return date.today() - timedelta(days=n)

else:

return date.today() + timedelta(days=n)

def get_days_of_month(year, mon):

'''''

get days of month

'''

return calendar.monthrange(year, mon)[1]

def get_firstday_of_month(year, mon):

'''''

get the first day of month

date format = "YYYY-MM-DD"

'''

days = "01"

if (int(mon) < 10):

mon = "0" + str(int(mon))

arr = (year, mon, days)

return "-".join("%s" % i for i in arr)

def get_lastday_of_month(year, mon):

'''''

get the last day of month

date format = "YYYY-MM-DD"

'''

days = calendar.monthrange(year, mon)[1]

mon = addzero(mon)

arr = (year, mon, days)

return "-".join("%s" % i for i in arr)

def get_firstday_month(n=0):

'''''

get the first day of month from today

n is how many months

'''

(y, m, d) = getyearandmonth(n)

d = "01"

arr = (y, m, d)

return "-".join("%s" % i for i in arr)

def get_lastday_month(n=0):

'''''

get the last day of month from today

n is how many months

'''

return "-".join("%s" % i for i in getyearandmonth(n))

def getyearandmonth(n=0):

'''''

get the year,month,days from today

befor or after n months

'''

thisyear = int(year)

thismon = int(mon)

totalmon = thismon + n

if (n >= 0):

if (totalmon <= 12):

days = str(get_days_of_month(thisyear, totalmon))

totalmon = addzero(totalmon)

return (year, totalmon, days)

else:

i = totalmon / 12

j = totalmon % 12

if (j == 0):

i -= 1

j = 12

thisyear += i

days = str(get_days_of_month(thisyear, j))

j = addzero(j)

return (str(thisyear), str(j), days)

else:

if ((totalmon > 0) and (totalmon < 12)):

days = str(get_days_of_month(thisyear, totalmon))

totalmon = addzero(totalmon)

return (year, totalmon, days)

else:

i = totalmon / 12

j = totalmon % 12

if (j == 0):

i -= 1

j = 12

thisyear += i

days = str(get_days_of_month(thisyear, j))

j = addzero(j)

return (str(thisyear), str(j), days)

def addzero(n):

'''''

add 0 before 0-9

return 01-09

'''

nabs = abs(int(n))

if (nabs < 10):

return "0" + str(nabs)

else:

return nabs

def get_today_month(n=0):

'''''

获取当前日期前后N月的日期

if n>0, 获取当前日期前N月的日期

if n<0, 获取当前日期后N月的日期

date format = "YYYY-MM-DD"

'''

(y, m, d) = getyearandmonth(n)

arr = (y, m, d)

if (int(day) < int(d)):

arr = (y, m, day)

return "-".join("%s" % i for i in arr)

if __name__ == "__main__":

print today()

print todaystr()

print datetime()

print datetimestr()

print get_day_of_day(20)

print get_day_of_day(-3)

print get_today_month(-3)

print get_today_month(3)

print get_today_month(19)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持

python当前日期加n天_利用python获取当前日期前后N天或N月日期的方法示例相关推荐

  1. python过去日期_利用python获取当前日期前后N天或N月日期的方法示例

    前言 最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧. 示例代码: # -*- coding: utf-8 ...

  2. python头像右上角加红色数字_利用python实现微信头像加红色数字功能

    通过Python实现将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果. 类似于图中效果 实现过程: 准备两张图片如下: 使用PIL图像处理库,导入moudle ...

  3. python获取一个月之前日期_利用python获取当前日期前后N天或N月日期的方法示例...

    前言 最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧. 示例代码: # -*- coding: utf-8 ...

  4. 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...

    数据挖掘入门与实战 公众号: datadw 本文讲述如何利用Python模拟淘宝的搜索过程并对搜索结果进行初步的数据可视化分析. 搜索过程的模拟:淘宝的搜索页面有两种形式, 一种形式是, 2019/2 ...

  5. python怎么去掉视频字幕_利用Python实现字幕挂载(把字幕文件与视频合并)思路详解...

    其实超简单超简单!python好现成的库,一下子省略了好多步骤! 本文在Windows环境下!linux只是不需要手动输入imagicmagick的位置! 需要用到的环境 python(基本上只要不是 ...

  6. python爬去百度文库_利用Python语言轻松爬取数据[精品文档]

    利用 Python 语言轻松爬取数据 对于小白来说,爬虫可能是一件非常复杂. 技术门槛很高的事情. 比如有人认为学爬虫必须精通 Python ,然后哼哧哼哧系统学习 Python 的每个知识点,很久之 ...

  7. python输入数组并计算_利用Python进行数据分析——Numpy基础:数组和矢量计算

    利用Python进行数据分析--Numpy基础:数组和矢量计算 ndarry,一个具有矢量运算和复杂广播能力快速节省空间的多维数组 对整组数据进行快速运算的标准数学函数,无需for-loop 用于读写 ...

  8. python爬取百度文库_利用Python语言轻松爬取数据

    利用 Python 语言轻松爬取数据 对于小白来说,爬虫可能是一件非常复杂. 技术门槛很高的事情. 比如有人认为学爬虫必须精通 Python ,然后哼哧哼哧系统学习 Python 的每个知识点,很久之 ...

  9. python用什么处理文件_利用Python如何快速处理文件

    利用Python如何快速处理文件 我之前要合并将近1000个CSV表格 每个表格共370列,约360行不等,列名相同 三个方案瞬间浮现在我眼前: 1.Ctrl C + Ctrl V--可以睡公司了: ...

最新文章

  1. 如何对 Rocksdb以及类似存储引擎社区 提出 有效的性能问题?
  2. 如何把Word里的公式放到PowerPoint里
  3. 226. Invert Binary Tree 1
  4. mysql 存储引擎接口_MySQL 的基础一(连接池, SQL接口, 查询解析器, 查询优化器, 存储引擎接口, 执行器,)...
  5. P4338-[ZJOI2018]历史【LCT】
  6. space index.php 7-14,disk_free_space()
  7. 通过SCVMM分配SMB 3.0 文件共享
  8. 【ArcGIS|空间分析】在范围内平均生成点 | 面要素内均匀且规定个数来均匀生成点
  9. Spark算子:RDD键值转换操作(5)–leftOuterJoin、rightOuterJoin、subtractByKey
  10. 最牛通达信短线超强波段主图指标公式 源码
  11. 各大Asp木马的万能密码
  12. WS2:Windows系统中嵌入式Linux开发之神器
  13. 平板电脑也可以学python吗?10 个Python 编辑器,,让编程更贴近生活~
  14. 计算机弹奏两只老虎爱跳舞,原神风物之诗琴乐谱
  15. Unity Shader Graph 制作 Fade 淡入淡出效果
  16. Instant Contiki
  17. sentinel限流相关指标统计源码分析
  18. C++求最大与最小值
  19. 博途数据类型wstring怎么用_西门子博图数据类型说明
  20. background-clip和background-origin

热门文章

  1. 计算机拆装与网络配置技能,计算机硬件及网络计算机原理与拆装.ppt
  2. java 类型推导_Java10类型推导
  3. 与孩子一起学编程python_《与孩子一起学编程》python自测题
  4. oracle PROFILE的使用学习
  5. easyexcel导入获取表头并且表头为不固定列
  6. could not open extension control file “/usr/share/postgresql/9.1/extension/dblink.control“
  7. sp+Ssh+Mysql实现的简单的企业物资信息管理
  8. 安卓线程同步面试_面试BAT大厂,可少不了这些题目!
  9. apidoc @apiGroup兼容中文
  10. [SHOI2001]小狗散步