加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python基础—10-常用模块:time,calendar,datetime

发布时间:2020-12-17 00:23:06 所属栏目:Python 来源:网络整理
导读:p data-source-line="1"#常用模块 h3 id="time" data-source-line="3"time ul data-source-line="5" sleep:休眠指定的秒数(可以是小数) time:获取时间戳(从1970-01-01 00:00:00到此刻的秒数) localtime:将一个时间戳转换为一个对象,对象中包含了所有日期

<p data-source-line="1">#常用模块


<h3 id="time" data-source-line="3">time
<ul data-source-line="5">

  • sleep:休眠指定的秒数(可以是小数)

  • time:获取时间戳(从1970-01-01 00:00:00到此刻的秒数)

  • localtime:将一个时间戳转换为一个对象,对象中包含了所有日期时间信息

    local_time = (local_time.tm_year)
  • mktime:将日期时间信息转换为时间戳

    new_time = time.mktime((2018,6,20,10,32,2,171(new_time)
  • strftime:将原则对象格式化显示

    (time.strftime( (time.strftime(
  • gmtime:将时间戳转换为localtime对象

    (time.gmtime())
  • asctime:将localtime以特定的格式显示

    (time.asctime())
  • timezone:时区

    (time.timezone)
    • 使用

      <span style="color: #008000">#<span style="color: #008000"> 返回某一年的日历
      c = calendar.calendar(2018,w=3,l=2,c=10,m=2<span style="color: #000000">)
      <span style="color: #008000">#<span style="color: #008000"> print(c)

      <span style="color: #008000">#<span style="color: #008000"> 返回某一年某一月的日历
      m = calendar.month(2018,l=2<span style="color: #000000">)
      <span style="color: #008000">#<span style="color: #008000"> print(m)

      <span style="color: #008000">#<span style="color: #008000"> 判断一个年份是否是闰年
      <span style="color: #0000ff">print(calendar.isleap(2008<span style="color: #000000">))

      <span style="color: #008000">#<span style="color: #008000"> 返回两个年份之间的闰年数 [起始年,结束年)
      <span style="color: #0000ff">print(calendar.leapdays(2000,2008)) <span style="color: #008000">#<span style="color: #008000"> 返回2
      <span style="color: #0000ff">print(calendar.leapdays(2000,2009)) <span style="color: #008000">#<span style="color: #008000"> 返回3

      date

      datetime <span style="color: #008000">#<span style="color: #008000"> 创建对象
      d1 = date(2018,20<span style="color: #000000">)
      <span style="color: #0000ff">print
      <span style="color: #000000">(d1)

      d2 =<span style="color: #000000"> date.today()
      <span style="color: #0000ff">print<span style="color: #000000">(d2)

      d3 =<span style="color: #000000"> date.fromtimestamp(time.time())
      <span style="color: #0000ff">print<span style="color: #000000">(d3)

      <span style="color: #008000">#<span style="color: #008000"> 转换为标准格式字符串
      s =<span style="color: #000000"> d1.isoformat()
      <span style="color: #0000ff">print<span style="color: #000000">(s)
      <span style="color: #008000">#<span style="color: #008000"> print(type(s))

      <span style="color: #008000">#<span style="color: #008000"> 日历显示:(年,第几周,星期)
      <span style="color: #0000ff">print<span style="color: #000000">(d1.isocalendar())

      <span style="color: #008000">#<span style="color: #008000"> 获取星期(1~7)
      <span style="color: #0000ff">print<span style="color: #000000">(d1.isoweekday())
      <span style="color: #008000">#<span style="color: #008000"> 获取星期(0~6)
      <span style="color: #0000ff">print<span style="color: #000000">(d1.weekday())

      <span style="color: #008000">#<span style="color: #008000"> 格式化
      <span style="color: #0000ff">print(d1.strftime(<span style="color: #800000">'<span style="color: #800000">%Y/%m/%d<span style="color: #800000">'<span style="color: #000000">))

      <span style="color: #008000">#<span style="color: #008000"> 转换为类似于元组的形式(localtime)
      <span style="color: #0000ff">print(d1.timetuple())

    • time

      datetime <span style="color: #008000">#<span style="color: #008000"> 创建对象
      t = time(1,3<span style="color: #000000">)
      <span style="color: #0000ff">print<span style="color: #000000">(t)

      <span style="color: #008000">#<span style="color: #008000"> 单独获取
      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">时<span style="color: #800000">'<span style="color: #000000">,t.hour)
      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">分<span style="color: #800000">'<span style="color: #000000">,t.minute)
      <span style="color: #0000ff">print(<span style="color: #800000">'<span style="color: #800000">秒<span style="color: #800000">'<span style="color: #000000">,t.second)

      <span style="color: #008000">#<span style="color: #008000"> 格式化显示
      <span style="color: #0000ff">print(t.strftime(<span style="color: #800000">'<span style="color: #800000">%H::%M::%S<span style="color: #800000">'))

    • datetime

      datetime <span style="color: #008000">#<span style="color: #008000"> 创建对象
      dt = datetime(2018,14,29,30<span style="color: #000000">)
      <span style="color: #0000ff">print
      <span style="color: #000000">(dt)
      <span style="color: #008000">#<span style="color: #008000"> 当前时间,当地带时区的时间
      dt2 =<span style="color: #000000"> datetime.now()
      <span style="color: #0000ff">print<span style="color: #000000">(dt2)
      <span style="color: #008000">#<span style="color: #008000"> 不带时区的时间
      dt3 =<span style="color: #000000"> datetime.utcnow()
      <span style="color: #0000ff">print<span style="color: #000000">(dt3)
      <span style="color: #008000">#<span style="color: #008000"> 将时间戳转换为日期时间
      dt4 =<span style="color: #000000"> datetime.fromtimestamp(time.time())
      <span style="color: #0000ff">print<span style="color: #000000">(dt4)

      <span style="color: #008000">#<span style="color: #008000"> 提取日期
      d =<span style="color: #000000"> dt.date()
      <span style="color: #0000ff">print<span style="color: #000000">(d)
      <span style="color: #008000">#<span style="color: #008000"> print(type(d))<span style="color: #008000">

      <span style="color: #008000"> 提取时间

      <span style="color: #0000ff">print<span style="color: #000000">(dt.time())
      <span style="color: #008000">#<span style="color: #008000"> 转换为时间戳
      <span style="color: #0000ff">print<span style="color: #000000">(dt.timestamp())

      <span style="color: #008000">#<span style="color: #008000"> 格式化显示
      <span style="color: #0000ff">print(dt.strftime(<span style="color: #800000">'<span style="color: #800000">%Y/%m/%d %H:%M:%S<span style="color: #800000">'))

    • timedelta

      datetime d1 = datetime(2018,19,11,12<span style="color: #000000">)
      d2
      = datetime(2018,12,18<span style="color: #000000">)

      <span style="color: #008000">#<span style="color: #008000"> 得到时间差对象timedelta
      delta = d2 -<span style="color: #000000"> d1
      <span style="color: #0000ff">print<span style="color: #000000">(delta)
      <span style="color: #0000ff">print<span style="color: #000000">(type(delta))

      delta2 = timedelta(days=2,hours=3,minutes=4,seconds=6<span style="color: #000000">)
      <span style="color: #0000ff">print<span style="color: #000000">(delta2)

      d3 = d1 +<span style="color: #000000"> delta2
      <span style="color: #0000ff">print<span style="color: #000000">(d3)

      <span style="color: #008000">#<span style="color: #008000"> 天数
      <span style="color: #0000ff">print<span style="color: #000000">(delta2.days)
      <span style="color: #008000">#<span style="color: #008000"> 除天以外的秒数
      <span style="color: #0000ff">print<span style="color: #000000">(delta2.seconds)
      <span style="color: #008000">#<span style="color: #008000"> 总共的秒数
      <span style="color: #0000ff">print(delta2.total_seconds())

      定义:模块就像工具包一样,里面有很多工具(函数、类等),使用时导入即可

    • 分类:

      • 标准库:random、sys、os、time
      • 第三方:就是别人写好的一些模块,你自己拿来使用(使用pip即可进行安装)
      • 自定义:自己写的
    • 导入:

      random random as rdm random randint random randint as rint

      as说明:

      ? 使用as起别名后,代码中只能使用别名。

      ? 可以避免冲突,可写简化书写

    • 模糊导入:

      random *

      说明:导入random模块中 __ all __ 列表指定的内容,不建议使用(不易跟踪代码)

    • 自定义模块

      • 新建一个文件(不要与其他模块同名)
      • 新建的文件名(除了后缀)就是模块名
      • 导入的方式与官方的相同
      • 文件名(模块名)就是命名空间,不同命名空间下的标识符可以相同
      • 当使用多个模块下的相同标识符时,可以通过且别名或者通过命名空间进行区分
    • 测试模块

      • 每个模块中都有一个变量__name__,它表示当前的模块名
      • 但是当该模块作为主文件启动时其值为'__main__'
      • 通过会通过下面的方式书写测试代码:
      == ()
    • 包的使用

      • 定义:多个模块放在一个目录下,这个目录下必须有一个__init__.py文件,那么这个目录就是一个包
      • 说明:
        • __init__.py文件是一个目录称为包的标志,即使内容为空
        • 可以简化使用者对包内容的导入复杂度
    • 第三方模块的使用

      • 安装工具:pip
      • pip使用:
      pip -h/--help pip install 包名 pip uninstall 包名 pip list pip show 包名
      • 说明:安装失败通常是安装目录没有权限或断网

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

      推荐文章
        热点阅读