Python基础(四)—日期类型

【Python数据分析基础-3】Python的日期和时间及其处理的常用方法 0. 引入 上篇文章介绍了Python的标量类型,这篇文章,我将介绍一下Python的日期和时间及其处理的常用方法! 1. Python时间类型简介 Python中常用的时间表示方法有以下几种: 时间戳 格式化的时间字符串 time模块的time.struct_time类 datetime模块的datetime类 其中时间戳(imestamp)又称为Unix时间、POSIX时间。它表示从格林尼治时间1970年1月1日0时0分0秒开始到现在所经过的毫秒数,其值为float类型。 但Pytho.. 阅读详情

日期类型

Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。time模块主要用于处理时间,而Calendar模块有很广泛的方法用来处理年历和月历。
时间间隔是以秒为单位的浮点小数,每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示,如函数time.time()用于获取当前时间戳, 如下实例:

  import time
  print(time.time())  # 1556113327.2464266

时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

  • 时间元组

    Python函数用一个元组装起来的9组数字处理时间:

序号字段值
04位数年2008
1月1 到 12
2日1到31
3小时0到23
4分钟0到59
5秒0到61 (60或61 是闰秒)
6一周的第几日0到6 (0是周一)
7一年的第几日1到366 (儒略历)
8夏令时-1, 0, 1, -1是决定是否为夏令时的旗帜

上述也就是struct_time元组。这种结构具有如下属性:

序号属性值
0tm_year2008
1tm_mon1 到 12
2tm_mday1 到 31
3tm_hour0 到 23
4tm_min0 到 59
5tm_sec0 到 61 (60或61 是闰秒)
6tm_wday0到6 (0是周一)
7tm_yday1 到 366(儒略历)
8tm_isdst-1, 0, 1, -1是决定是否为夏令时的旗帜
  • 获取并格式化时间

    • 从返回浮点数的时间戳方式向时间元组转换,只要将浮点数传递给如localtime之类的函数
    • 可以使用 time 模块的 strftime 方法来格式化日期
      import time
    
      print(time.localtime(time.time()))
    
      print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
    
      print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
    
      a = "Sat Mar 28 22:24:24 2016"
      print(time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))
    
      """
      	time.struct_time(tm_year=2019, tm_mon=4, tm_mday=24, tm_hour=21, tm_min=50, tm_sec=15, tm_wday=2, tm_yday=114, tm_isdst=0)
      	2019-04-24 21:50:15
      	Wed Apr 24 21:50:15 2019
      	1459175064.0
      """
    
  • 时间日期格式化符号

    • %y 两位数的年份表示(00-99)
    • %Y 四位数的年份表示(000-9999)
    • %m 月份(01-12)
    • %d 月内中的一天(0-31)
    • %H 24小时制小时数(0-23)
    • %I 12小时制小时数(01-12)
    • %M 分钟数(00=59)
    • %S 秒(00-59)
    • %a 本地简化星期名称
    • %A 本地完整星期名称
    • %b 本地简化的月份名称
    • %B 本地完整的月份名称
    • %c 本地相应的日期表示和时间表示
    • %j 年内的一天(001-366)
    • %p 本地A.M.或P.M.的等价符
    • %U 一年中的星期数(00-53)星期天为星期的开始
    • %w 星期(0-6),星期天为星期的开始
    • %W 一年中的星期数(00-53)星期一为星期的开始
    • %x 本地相应的日期表示
    • %X 本地相应的时间表示
    • %Z 当前时区的名称
    • %% %号本身
  • 获取某月日历
    calendar模块

      import calendar
      cal = calendar.month(2019, 4)
      print(cal)
    

内置方法

  • Time 模块
序号函数描述
1time.sleep(secs)推迟调用线程的运行,secs指秒数。
2time.time( )返回当前时间的时间戳(1970纪元后经过的浮点秒数)。
3time.clock( )用以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时,比time.time()更有用。
4time.asctime([tupletime])接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。
5time.ctime([secs])作用相当于asctime(localtime(secs)),未给参数相当于asctime()
6time.gmtime([secs])接收时间戳(1970纪元后经过的浮点秒数)并返回格林威治天文时间下的时间元组t。注:t.tm_isdst始终为0
7time.localtime([secs])接收时间戳(1970纪元后经过的浮点秒数)并返回当地时间下的时间元组t(t.tm_isdst可取0或1,取决于当地当时是不是夏令时)。
8time.mktime(tupletime)接受时间元组并返回时间戳(1970纪元后经过的浮点秒数)。
9time.strftime(fmt[,tupletime])接收以时间元组,并返回以可读字符串表示的当地时间,格式由fmt决定。
10time.strptime(str,fmt=’%a %b %d %H:%M:%S %Y’)根据fmt的格式把一个时间字符串解析为时间元组。
11time.tzset()根据环境变量TZ重新初始化时间相关设置。
12time.altzone返回格林威治西部的夏令时地区的偏移秒数。如果该地区在格林威治东部会返回负值(如西欧,包括英国)。对夏令时启用地区才能使用。

Time模块包含了以下2个非常重要的属性:

序号属性描述
1time.timezone属性time.timezone是当地时区(未启动夏令时)距离格林威治的偏移秒数(>0,美洲;<=0大部分欧洲,亚洲,非洲)。
2time.tzname属性time.tzname包含一对根据情况的不同而不同的字符串,分别是带夏令时的本地时区名称,和不带的。
  • 日历(Calendar)模块
    此模块的函数都是日历相关的,例如打印某月的字符月历,星期一是默认的每周第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数。模块包含了以下内置函数:
序号函数描述
1calendar.calendar(year,w=2,l=1,c=6)返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c。 每日宽度间隔为w字符。每行长度为21* W+18+2* C。l是每星期行数。
2calendar.firstweekday( )返回当前每周起始日期的设置。默认情况下,首次载入caendar模块时返回0,即星期一。
3calendar.isleap(year)是闰年返回 True,否则为 False。
4calendar.leapdays(y1,y2)返回在Y1,Y2两年之间的闰年总数。
5calendar.month(year,month,w=2,l=1)返回一个多行字符串格式的year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6。l是每星期的行数。
6calendar.monthcalendar(year,month)返回一个整数的单层嵌套列表。每个子列表装载代表一个星期的整数。Year年month月外的日期都设为0;范围内的日子都由该月第几日表示,从1开始。
7calendar.monthrange(year,month)返回两个整数。第一个是该月的星期几的日期码,第二个是该月的日期码。日从0(星期一)到6(星期日);月从1到12。
8calendar.prcal(year,w=2,l=1,c=6)相当于 print calendar.calendar(year,w,l,c).
9calendar.prmonth(year,month,w=2,l=1)相当于 print calendar.calendar(year,w,l,c)。
10calendar.setfirstweekday(weekday)设置每周的起始日期码。0(星期一)到6(星期日)。
11calendar.timegm(tupletime)和time.gmtime相反:接受一个时间元组形式,返回该时刻的时间戳(1970纪元后经过的浮点秒数)。
12calendar.weekday(year,month,day)返回给定日期的日期码。0(星期一)到6(星期日)。月份为 1(一月) 到 12(12月)。

由于该项内容比较少用,本文主要参照菜鸟教程

个人博客:Loak 正 - 关注人工智能及互联网的个人博客
文章地址:Python基础(四)—日期类型

Python中日期时间的处理 Python中提供了许多库和模块来处理日期时间,包括时间戳转换、时间差计算、日期时间格式化和解析等。通过使用这些库和模块,我们可以轻松地处理各种类型的日期时间数据,并实现高效的数据处理和分析。在实际应用中,我们需要根据具体的需求选择合适的库和模块,并使用适当的函数和方法来处理日期时间数据。同时,还需要注意处理日期时间时可能出现的各种问题,例如时区转换、闰年闰月等。 阅读详情

相关推荐

长短期记忆网络(Long Short-Term Memory networks, LSTM)

如何简单的理解LSTM——其实没有那么复杂:

weixin_39910711的博客 2万+

Python 基础 (标准库):datetime (基本日期和时间类型)

Python 标准库学习:datetime

AbigailQin 的博客 1万+

用友BIP培训资料-设计采购订单新增API接口开发

14.在子实体的String pkMeas = order_hhrSlave0VOJson.getString("pk_meas");Openapi路径:nccloud/api/pu/order_hhrmanage/order_hhrMaster/addAggOrder_hhrMasterVO。实现接口的开发部署,通过openAPI的test类,实现一条数据的插入。16.进入自己的Idea打开老师发的TestOpenApi并且编译完成后如下。12.编写检测是否字段中是否含有中文的方法。

m0_68497879的博客 1549

Python时间日期类型

一、time模块 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。1)time是归类在Generic Operating System Services中,它提供的功能是更加接近于操作系统层面的。time模块是围绕着Unix Timestamp进行的 2)时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08是00分00秒)起...

abby1559的博客 2677

类银河恶魔城学习记录1-1 Player状态机的搭建 P28

什么是状态机?一篇文章就够了 - 知乎说实话,目前并不能深入理解状态机的奇妙之处(当然,我觉得状态机作为教程的重要组成部分是不得不理解的,所以以下我会对游戏教程内的状态机做一些我认为的解释,如有错误,请多包涵)

Homura_的博客 2343

五子棋AI实战:极大极小搜索、Alpha-Beta剪枝与禁手实现

博弈树搜索是双人零和博弈AI的经典决策框架,其核心思想是假设对手最优应对,通过递归遍历走法空间寻找最优解。极大极小搜索配合Alpha-Beta剪枝,能在不影响决策结果的前提下将搜索量降至平方根级别,大幅提升搜索效率。在五子棋场景中,还需处理黑棋禁手规则,包括双三、双四和长连判定,并将其融入搜索框架。评估函数基于棋型识别对局面打分,走法排序和迭代加深进一步优化剪枝效果。这些技术共同构成了一个可运行的五子棋AI,适用于棋类AI入门与博弈搜索实践。

weixin_29054399的博客 132

Python时间数据类型

目录1 datetime基本知识点1.1 存储精细度1.2 计算时间差1.3 加减求另一个时间2 日期与字符串的转换2.1 时间类型转为字符串2.2 字符串转为时间数据类型 时间类型数据在生活中非常常见,经济、金融、物理等方面都会使用到,在观测数据过程中,对于时间序列数据常常使用的有三种: 时间戳 :具体的时刻 时间间隔 :由开始和结束的时间戳表示 固定的时间区间 :比如说2020年一整年 Pyt...

qq_31385713的博客 8564

VMware Converter 6.2.0保姆级教程:从物理机到ESXi主机的完整迁移指南(含常见错误排查)

本文提供VMware Converter 6.2.0从物理机迁移至ESXi主机的完整保姆级教程。详细解析了迁移前的环境规划、核心转换过程步骤、版本差异对比,并重点针对代理安装失败、任务卡顿、虚拟机无法启动等常见错误提供了实战排查与解决方案,确保P2V迁移顺利进行。

sam99的博客 380

python的read_excel函数转换列为日期类型

使用Python的read_excel函数转换列为日期类型 在数据分析的工作中,我们常常需要处理Excel文件中的数据。Python的pandas库提供了强大的功能来读取和处理Excel文件。在这篇文章中,我将教会你如何用Python的read_excel函数将Excel中的特定列转换为日期类型。 步骤流程 下面是整个任务...

weixin_40544316的博客 530

sap 新增科目表_SAP系统中四大科目表的总结

操作科目表定义-OB13 2国家科目表定义-OB13 3集团科目表定义-OB13 4合并科目表(ECCS)定义-CX10 4分配操作科目表到公司代码-OB62 5分配国家科目表到公司代码-OB62 6分配集团科目表到操作科目表-OB13 6分配集团科目表到合并科目表-CXNF 7Operation 8定义集团科目表的科目-FSP0 8定义国家科目表的科目-FSP0 8定义操作科目表的科目-FSP0...

weixin_39585463的博客 1721

UE4-(IK)实现人物脚贴合地面解决斜坡上脚无旋转无法贴合地面问题

在斜面上脚陷入模型中,需要设置旋转值对脚的骨骼进行一个旋转。 解决思路:在射线检测中可以获取到检测点的法线方向,根据法线方向来计算出脚应该向哪个方向进行适当的旋转,在斜坡上,人物脚需要旋转的轴为x轴和y轴以便来贴合地面,z轴方向的旋转是不需要进行修改的。 如图所示,我们需要求得水平面与斜坡的夹角用来得出人物在x轴上的脚旋转量,在蓝图中提供反正切函数,反正切 = 锐角的邻边/对边 所以 反正切值(脚x轴值(roll)) = 法线Y轴值/法线Z轴 值。 现在将上图的人物想象成面向屏幕,脚需...

Stone的博客 3317

Python xlrd读取excel日期类型的2种方法

这篇文章主要介绍了Python xlrd读取excel日期类型的2种方法,本文同时讲解了xlrd读取excel某个单元格的方法,需要的朋友可以参考下 有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法。 基本的代码结构 代码如下: data = xlrd.open_workbook(EXCEL_PA

promise_LOVE的专栏 3197

STM32F103(二十三)通用同步异步收发器(USART)

学习板:STM32F103ZET6 往期博客: STM32F103五分钟入门系列(一)跑马灯(库函数+寄存器)+加编程模板+GPIO总结 STM32F103五分钟入门系列(二)GPIO的七大寄存器+GPIOx_LCKR作用和配置 STM32F103五分钟入门系列(三)GPIO的常用库函数使用方法总结+一个网络上的误区 STM32F103五分钟入门系列(四)蜂鸣器实验(库函数+寄存器) STM32F103五分钟入门系列(五)按键实验(库函数+寄存器) STM32F103五分钟入门系列(六)时钟框图+相关寄存器

Curnane0_0的博客 1019

数字类型转换为日期类型python

数字类型转换为日期类型——Python实现 在数据处理与分析中,日期时间是一种非常常见的数据类型。数据处理的任务中,往往存在将数字类型(如时间戳或序列号)转换为日期类型的需求。本文将介绍如何在Python中实现这一过程,并给出相关的代码示例。 一、基本概念 在Python中,datetime模块提供了丰富的日期时间处理功能...

weixin_36988069的博客 491

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

python 如何判断是否是日期类型

你可以使用 Python 的 datetime 模块来判断一个变量是否为日期类型。 首先,你需要导入 datetime 模块: import datetime 然后,你可以使用 datetime 模块中的 datetime 类来创建一个日期对象。 例如: date = datetime.datetime(2020, 1, 1) 这样你就可以使用 isinstance() 函数来判断一个变量是否...

weixin_35755188的博客 2702

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【python】如何判断一个变量是日期类型,还是日期形式的字符串

开头上结论 如何判断是否为日期型: >>> import datetime >>> now=datetime.datetime.now() >>> isinstance(now, datetime.datetime) 结果: 如何判断是否为日期形式的字符串: >>> now_str=now.strfti...

u014458962的专栏 1万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

python 处理日期类型常用方法

python处理日期类型常用方法汇总 import os, sys, datetime, time #0、初始化一个string类型的日期 a_string_date = '2021-03-29' #1、string类型日期转 date类型 a_date = datetime.datetime(year = int(a_string_date[:4]), month = int(a_string_date[5:7]), day

Toby的博客 1185

python xlrd读取excel慢_Python xlrd读取excel日期类型的2种方法

有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法。基本的代码结构复制代码 代码如下:data = xlrd.open_workbook(EXCEL_PATH)table = data.sheet_by_index(0)lines = table.nrowscols = table.ncolsprint u'The total line ...

weixin_39794385的博客 109

mongo-日期类型(2)

mongo-日期类型(1) 当通过mongo shell来插入日期类型数据时,使用new Date()和使用Date()是不一样的: &gt; db.tianyc04.insert({mark:1,

dearbaba_8520的博客 1170

【mysql】日期类型转字符串

日期类型转字符串 select date_format('1997-10-04 22:23:00', '%Y-%m-%d %H:%i:%s') 字符串转日期类型 select str_to_date('2014-08-20 00:00:00', '%Y-%m-%d %H:%i:%s') 在使用python执行sql语句时出现问题如下: ValueError: unsupported fo...

sysu_lluozh 3651

pymongo 日期类型

这是因为mongo中的date类型以UTC(Coordinated Universal Time)存储,就等于GMT(格林尼治标准时)时间。而系统时间使用的是GMT+0800时间,两者正好相差8个小时。mongo中的日期类型,使用ISO格式,例如:ISODate("2012-11-02T07:58:51.718Z")。我们看到,mongo中的时间似乎与系统时间相差了8个小时,why?当前日期: 2012-11-02 星期五。当前时间: 16:13:14.95。输入新日期: (年月日)

墨痕诉清风的博客 4526

python读取excel日期内容读出来是数字-Python xlrd读取excel日期类型的2种方法

有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法。基本的代码结构复制代码 代码如下:data = xlrd.open_workbook(EXCEL_PATH)table = data.sheet_by_index(0)lines = table.nrowscols = table.ncolsprint u'The total line ...

weixin_37988176的博客 1849

MongoDB——ISODate日期类型

转载自:http://www.cnblogs.com/yuechaotian/archive/2013/02/02/2889824.html 当通过mongo shell来插入日期类型数据时,使用new Date()和使用Date()是不一样的: > db.tianyc04.insert({mark:1, mark_time:new Date()}) > db.tianyc04.in

世界中心的专栏 4万+

Python 日期类型字符判断

Python 日期类型字符判断,如何判断一个字符串是否是日期类型

jianxuan的专栏 3330

使用python读取tushare股市数据后,如何将float类型的日期,转化为日期类型,并且设定为索引

使用python读取tushare股市数据后,如何将float类型的日期,转化为日期类型,并且设定为索引 直接代码如下: import pandas as pd import tushare as ts TOKEN = 'c0**********8c' pro = ts.pro_api(token=TOKEN) #使用token获取600519.SH的日行情数据daily = pro.da...

跬步Python股票数据量化分析 2114

pandas更改索引为日期类型

更改索引为日期类型: df.index = pd.to_datetime(df.index)

跑着跑着人就瘦了 7352
上一篇: Python基础(三)—字典和集合
下一篇: Python基础(五)—函数(参数解析、global、递归)
luoz_python
博客等级 码龄10年 57粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值