navie时间和aware时间:

什么是navie时间?什么是aware时间?

  1. navie时间:不知道自己的时间表示的是哪个时区的。也就是不知道自己几斤几两。比较幼稚。
  2. aware时间:知道自己的时间表示的是哪个时区的。也就是比较清醒。

pytz库:

专门用来处理时区的库。这个库会经常更新一些时区的数据,不需要我们担心。并且这个库在安装Django的时候会默认的安装。如果没有安装,那么可以通过pip install pytz的方式进行安装。

astimezone方法:

将一个时区的时间转换为另外一个时区的时间。这个方法只能被aware类型的时间调用。不能被navie类型的时间调用。示例代码如下(Linux环境下进入python环境):

import pytz
from datetime import datetime
now = datetime.now() # 这是一个navie类型的时间
utc_timezone = pytz.timezone("UTC") # 定义UTC的时区对象
utc_now = now.astimezone(utc_timezone) # 将当前的时间转换为UTC时区的时间
>> ValueError: astimezone() cannot be applied to a naive datetime # 会抛出一个异常,原因就是因为navie类型的时间不能调用astimezone方法 now = now.replace(tzinfo=pytz.timezone('Asia/Shanghai'))
utc_now = now.astimezone(utc_timezone)
# 这时候就可以正确的转换。

可以将一个时间的某些属性进行更改。

转载于:https://www.cnblogs.com/zheng-weimin/p/10216513.html

最新文章

  1. https://github.com/chenghuige/tensorflow-exp/blob/master/examples/sparse-tensor-classification/
  2. CSV文件分割与列异常处理的python脚本
  3. 关于cin,getchar(),scanf()的注意事项(转)
  4. gridview合并单元格
  5. json数值和结构
  6. 安装Cocoapoads遇到的问题的解决办法
  7. 原生的UITableViewCell高度自适应,textLabel自动换行显示
  8. SMT实用工艺
  9. BFS和DFS详解
  10. ios 基础学习二
  11. 关于ThreadLocal和一般的线程同步的详细解释
  12. iOS之 NSTimer(二)
  13. vue组件利用formdata图片预览以及上传《转载》
  14. Rails在MacOS上搭建Heroku部署环境
  15. 【转载分享】 JLINKv9在迅为iTOP-4412精英板上的应用
  16. C#实现WinForm禁止最大化、最小化、双击标题栏、双击图标等操作的方法
  17. OneNET麒麟座应用开发之五:获取加速度传感器ADXL345数据
  18. 【转&改进】Linux MPI 单机配置
  19. zookeeper for windows
  20. oracle数据库存储过程中NO_DATA_FOUND不起作用解决

热门文章

  1. system.exit(int status)中status值不同时的区别
  2. 编写体面的UI测试
  3. <人人都懂设计模式>-装饰模式
  4. python基础之五:dict 字典
  5. 简述 asynio模块的作用和应用场景。
  6. LeetCode 1216. Valid Palindrome III
  7. git blame (10)
  8. PHP原生分页的编写
  9. SFTP 文件上传下载工具类
  10. 何为pc值