1. """时间处理 """
  2. __author__on__ = 'shaozhiqi 2019/9/25'
  3.  
  4. # !/usr/bin/env python3
  5. # -*- coding: utf-8 -*-
  6. # ------------------------------------------datetime---------------------------------------
  7. from datetime import datetime, timedelta
  8.  
  9. now = datetime.now() # 获取当前datetime
  10. print(now) # 2019-09-25 14:43:15.124296
  11. print(type(now)) # <class 'datetime.datetime'>
  12.  
  13. # 如果仅导入import datetime,则必须引用全名datetime.datetime。
  14. # datetime.now()返回当前日期和时间,其类型是datetime。
  15.  
  16. # 要指定某个日期和时间,我们直接用参数构造一个datetime:
  17. dt = datetime(2019, 4, 19, 12, 20) # 用指定日期时间创建datetime
  18. print(dt) # 2019-04-19 12:20:00
  19.  
  20. # ------------------------------------------------datetime转换为timestamp------------------------------------------
  21. # 在计算机中,时间实际上是用数字表示的。我们把1970年1月1日 00:00:00 UTC+00:00时区的时刻称为epoch time,
  22. # 记为0(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。
  23. # 可见timestamp的值与时区毫无关系,因为timestamp一旦确定,其UTC时间就确定了,转换到任意时区的时间也是完全确定的,
  24. # 这就是为什么计算机存储的当前时间是以timestamp表示的,因为全球各地的计算机在任意时刻的timestamp都是完全相同的(假定时间已校准)。
  25. dt = datetime(2015, 4, 19, 12, 20) # 用指定日期时间创建datetime
  26. print(dt.timestamp()) # 把datetime转换为timestamp
  27. # 1429417200.0
  28. # 注意Python的timestamp是一个浮点数。如果有小数位,小数位表示毫秒数。
  29. # 某些编程语言(如Java和JavaScript)的timestamp使用整数表示毫秒数,这种情况下只需要把timestamp除以1000就得到Python的浮点表示方法。
  30.  
  31. # --------------------------------------------------timestamp转换为datetime----------------------------------------
  32. # 要把timestamp转换为datetime,使用datetime提供的fromtimestamp()方法:
  33. t = 1429417200.0
  34. print(datetime.fromtimestamp(t)) # 2015-04-19 12:20:00
  35.  
  36. # 注意到timestamp是一个浮点数,它没有时区的概念,而datetime是有时区的。上述转换是在timestamp和本地时间做转换。
  37. # 本地时间是指当前操作系统设定的时区。例如北京时区是东8区,则本地时间:
  38. # 2015-04-19 12:20:00
  39.  
  40. # --------------------------------------------------str转换为datetime-------------------------------------------------
  41. # 很多时候,用户输入的日期和时间是字符串,要处理日期和时间,首先必须把str转换为datetime。
  42. # 转换方法是通过datetime.strptime()实现,需要一个日期和时间的格式化字符串:
  43.  
  44. cday = datetime.strptime('2019-6-1 18:19:59', '%Y-%m-%d %H:%M:%S')
  45. print(cday) # 2019-06-01 18:19:59
  46.  
  47. # ----------------------------------------------------datetime转换为str------------------------------------------------
  48. # 如果已经有了datetime对象,要把它格式化为字符串显示给用户,就需要转换为str,转换方法是通过strftime()实现的,同样需要一个日期和时间的格式化字符串:
  49.  
  50. now = datetime.now()
  51. print(now.strftime('%a, %b %d %H:%M')) # Wed, Sep 25 14:56
  1. # ------------------------------------------------datetime加减--------------------------------------------------------
    now = datetime.now()
    print('now1:', now) # now1: 2019-09-25 18:40:57.979018
    now2=now + timedelta(hours=10)
    print('now2:', now2) # now2: 2019-09-26 04:40:57.979018
    now3=now - timedelta(days=1)
    print('now3:', now3) # now3: 2019-09-24 18:40:57.979018
    now4=now + timedelta(days=2, hours=12)
    print('now4:', now4) # now4: 2019-09-28 06:40:57.979018

python3(四十)datetime timestamp str的更多相关文章

  1. 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数

    孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...

  2. 孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类尝试第一天

     孤荷凌寒自学python第四十六天开始建构自己用起来更顺手一点的Python模块与类,尝试第一天 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 按上一天的规划,这是根据过去我自学其它编程语 ...

  3. 孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备

     孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天本来应当继续学习Python的数据库操作,但根据过去我自 ...

  4. 孤荷凌寒自学python第四十天python 的线程锁RLock

     孤荷凌寒自学python第四十天python的线程锁RLock (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 因为研究同时在多线程中读写同一个文本文件引发冲突,所以使用Lock锁尝试同步, ...

  5. Python之路(第四十六篇)多种方法实现python线程池(threadpool模块\multiprocessing.dummy模块\concurrent.futures模块)

    一.线程池 很久(python2.6)之前python没有官方的线程池模块,只有第三方的threadpool模块, 之后再python2.6加入了multiprocessing.dummy 作为可以使 ...

  6. Spark(四十四):使用Java调用spark-submit.sh(支持 --deploy-mode client和cluster两种方式)并获取applicationId

    之前也介绍过使用yarn api来submit spark任务,通过提交接口返回applicationId的用法,具体参考<Spark2.3(四十):如何使用java通过yarn api调度sp ...

  7. 孤荷凌寒自学python第四十四天Python操作 数据库之准备工作

     孤荷凌寒自学python第四十四天Python操作数据库之准备工作 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天非常激动地开始接触Python的数据库操作的学习了,数据库是系统化设计 ...

  8. abp(net core)+easyui+efcore实现仓储管理系统——出库管理之一(四十九)

    abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...

  9. 第四十四章 微服务CICD(6)- gitlab + jenkins + docker + k8s

    总体流程: 在开发机开发代码后提交到gitlab 之后通过webhook插件触发jenkins进行构建,jenkins将代码打成docker镜像,push到docker-registry 之后将在k8 ...

随机推荐

  1. 面向对象第四单元(UML)及期末总结

    前言 统一建模语言(英语:Unified Modeling Language,缩写 UML),是软件架构设计建模和规约的语言. 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功 ...

  2. 2. Plugin execution not covered by lifecycle configuration

    问题: 找到当前项目的工作空间下的.metadata\.plugins\org.eclipse.m2e.core路径, 然后添加lifecycle-mapping-metadata.xml文件,内容如 ...

  3. Nginx双机主备(Keepalived实现)

    前言 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,起初是专为LVS负载均衡软件设计的,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的 ...

  4. 我的第一个html静态网页

    <!doctype html> <html>     <head>         <title>王兆国的个人博客</title>      ...

  5. CMDB资产采集方式

    一:Agent方式 原理:在每台服务器装上agent客户端程序,定时向数据库发送指定的资产信息. 优点:速度快. 缺点:服务器上需要多装一个软件 import subprocess import re ...

  6. drf-jwt的过滤,筛选,排序,分页组件

    目录 自定义drf-jwt配置 案例:实现多方式登陆签发token urls.py models.py serializers.py views.py 案例:自定义认证反爬规则的认证类 urls.py ...

  7. hdoj 1829 A bug's life 种类并查集

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1829 并查集的一个应用,就是检测是否存在矛盾,就是两个不该相交的集合有了交集.本题就是这样,一种虫子有 ...

  8. Javascript之实现页面倒计时效果

    本文将从需求实现的角度,逐步讲解如何在页面上实现倒计时效果,其中部分涉及到的知识会做拓展讲解,最后将所有代码封装,适用于不同情况下倒计时功能的实现. 效果图 一.分析需求 要实现倒计时效果,可拆解为以 ...

  9. 《JavaScript 模式》读书笔记(5)— 对象创建模式1

    这又是一个新的开始,对象的重要性不言而喻.在JavaScript中创建对象是十分容易的,之前聊过的对象字面量和构造函数都可以达到目的.但是本篇中,我们越过那些方法,以寻求一些额外的对象创建模式. 本篇 ...

  10. 【pytorch】改造resnet为全卷积神经网络以适应不同大小的输入

    为什么resnet的输入是一定的? 因为resnet最后有一个全连接层.正是因为这个全连接层导致了输入的图像的大小必须是固定的. 输入为固定的大小有什么局限性? 原始的resnet在imagenet数 ...