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. winform不能循环引用,使用接口传值到界面

    public partial class frmMain : Form, IFormManager { 4 public frmMain() { InitializeComponent(); 8 } ...

  2. DVWA Command Injection 解析

    命令注入,即 Command Injection.是指通过提交恶意构造的参数破坏命令语句结构,从而达到执行恶意命令的目的. 在Web应用中,有时候会用到一些命令执行的函数,如php中system.ex ...

  3. LeetCode | 287. 寻找重复数

    特别感谢LeetCode大佬陈牧远的科普知识 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数.假设只有一个重复的整数,找 ...

  4. requests模块使用一

    1.安装与简介 Urllib和requests模块是python中发起http请求最常见的模块,但是requests模块使用更加方便简单. pip install requests 2.GET请求 2 ...

  5. GitLab → 搭建私有的版本控制的托管服务平台

    开心一刻 睡着正香,媳妇用力把我晃醒说:“快起来,我爸来了.” 我一下醒了,手脚熟练的把衣服一抱,滚到床底,顺便把鞋也收了进去 媳妇蹲下无奈的说:“快出来!咱俩都结婚半年了.” 我:“对哦,搞习惯了” ...

  6. DNS提供的服务

    DNS提供的服务 DNS是:1.一个由分层的DNS服务器实现的分布式数据库:2. 一个使主机能够查询分布式数据库的应用协议.DNS协议运行在UDP上,使用53号端口. 与http,FTP,SMTP协议 ...

  7. spring-boot-plus-v2.0发布了-让天下没有难写的代码

    spring-boot-plus是易于使用,快速,高效,功能丰富,开源的spring boot脚手架 前后端分离,专注于后端服务 目标 每个人都可以独立.快速.高效地开发项目! GITHUB | GI ...

  8. selenium 使用教程详解-java版本

    第一章 Selenium 概述 1.1.Selenium 发展史 ​ Selenium是一系列基于Web的自动化工具,提供一套测试函数,用于支持Web自动化测试.函数非常灵活,能够完成界面元素定位.窗 ...

  9. Redis学习笔记2-redis管道(pipeline)

    redis的管道(Pipelining)操作是一种异步的访问模式,一次发送多个指令,不同步等待其返回结果.这样可以取得非常好的执行效率.这就是管道,调用方法如下: 来源:http://blog.csd ...

  10. Web 服务器压力测试实例详解

    发表于 2012-1-6 14:53 | 来自  51CTO网页 Web 服务器搭建完成上线在即,其能够承载多大的访问量,响应速度.容错能力等性能指标,所有这些是管理人员最想知道也最为担心的.如何才能 ...