Python用模块pytz来转换时区


Posted in Python onAugust 19, 2016

前言

最近遇到了一个问题:我的serverclient不是在一个时区,server时区是EDT,即美国东部时区,client,就是我自己的电脑,时区是中国标准时区,东八区。处于测试需要,我需要向server发送一个时间,使得server在这个时间戳去执行一些动作。这个时间戳通常是当前时间加2分钟或者几分钟。

通常美东在夏令时时,和我们相差12小时,所以直接减掉这12小时,然后再加两分钟,可以实现发送基于server的时间戳,但是只有一半时间是夏令时,所以考虑还是基于时区来做。百度了一下,Python有一个模块pytz是时区相关的,但不是builtin方法,所以需要安装一下。

1. 首先安装pytz,pip install pytz.

2. 试了一下水,打印出美国的时区:

#-*-coding:utf-8-*-
#/usr/bin/env python

import pytz
print(pytz.country_timezones('us'))#[u'America/New_York', u'America/Detroit', u'America/Kentucky/Louisville', u'America/Kentucky/Monticello', u'America/Indiana/Indianapolis', u'America/Indiana/Vincennes', u'America/Indiana/Winamac', u'America/Indiana/Marengo', u'America/Indiana/Petersburg', u'America/Indiana/Vevay', u'America/Chicago', u'America/Indiana/Tell_City', u'America/Indiana/Knox', u'America/Menominee', u'America/North_Dakota/Center', u'America/North_Dakota/New_Salem', u'America/North_Dakota/Beulah', u'America/Denver', u'America/Boise', u'America/Phoenix', u'America/Los_Angeles', u'America/Anchorage', u'America/Juneau', u'America/Sitka', u'America/Metlakatla', u'America/Yakutat', u'America/Nome', u'America/Adak', u'Pacific/Honolulu']

这个地方还真多,不过既然是东部,直接选New York就好了。

3. 下一步,打印出美东的current time。

#-*-coding:utf-8-*-
#/usr/bin/env python

import pytz
import time
import datetime
tz = pytz.timezone('America/New_York')
a = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
print(a)

#2016-08-18 02:26:53

4. 将时间转换为秒,加上120秒,然后再转换回标准格式:

#-*-coding:utf-8-*-
#/usr/bin/env python

import pytz
import time
import datetime

print(pytz.country_timezones('us'))
tz = pytz.timezone('America/New_York')
a = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
print(a)
b=time.mktime(time.strptime(a,'%Y-%m-%d %H:%M:%S'))+int(2)*60
print(time.strftime("%Y-%m-%d %H:%M",time.localtime(b)))

#2016-08-18 02:28

总结

以上就是在Python用模块pytz来转换时区的全部内容,希望本文的内容对大家学习使用Python能有所帮助。

Python 相关文章推荐
优化Python代码使其加快作用域内的查找
Mar 30 Python
python脚本内运行linux命令的方法
Jul 02 Python
利用标准库fractions模块让Python支持分数类型的方法详解
Aug 11 Python
python中利用队列asyncio.Queue进行通讯详解
Sep 10 Python
python3设计模式之简单工厂模式
Oct 17 Python
一百行python代码将图片转成字符画
Feb 19 Python
Python Numpy库安装与基本操作示例
Jan 08 Python
wxPython实现文本框基础组件
Nov 18 Python
python 实现检验33品种数据是否是正态分布
Dec 09 Python
python3 logging日志封装实例
Apr 08 Python
如何通过Python3和ssl实现加密通信功能
May 09 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
Dec 13 Python
教你用python3根据关键词爬取百度百科的内容
Aug 18 #Python
利用Python爬取可用的代理IP
Aug 18 #Python
总结用Pdb库调试Python的方式及常用的命令
Aug 18 #Python
Python实现命令行通讯录实例教程
Aug 18 #Python
Python采用Django开发自己的博客系统
Sep 29 #Python
浅析Python中元祖、列表和字典的区别
Aug 17 #Python
Python+django实现简单的文件上传
Aug 17 #Python
You might like
转换中文日期的PHP程序
2006/10/09 PHP
一个图形显示IP的PHP程序代码
2007/10/19 PHP
php metaphone()函数的定义和用法
2016/05/15 PHP
PHP基于关联数组20行代码搞定约瑟夫问题示例
2017/11/07 PHP
浅析PHP中的 inet_pton 网络函数
2019/12/16 PHP
textarea中的手动换行处理的jquery代码
2011/02/26 Javascript
js动态添加删除,后台取数据(示例代码)
2013/11/25 Javascript
js实现按Ctrl+Enter发送效果
2014/09/18 Javascript
JavaScript中函数(Function)的apply与call理解
2015/07/08 Javascript
jquery实现表格隔行换色效果
2015/11/19 Javascript
浅谈javascript中的call、apply、bind
2016/03/06 Javascript
原生JS 购物车及购物页面的cookie使用方法
2017/08/21 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
JavaScript 截取字符串代码实例
2019/09/05 Javascript
在Layui中操作数据表格,给指定单元格添加事件示例
2019/10/26 Javascript
详解python中字典的循环遍历的两种方式
2017/02/07 Python
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
2017/06/12 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
python批量创建指定名称的文件夹
2019/03/21 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
Python 处理日期时间的Arrow库使用
2020/08/18 Python
Java基础面试题
2014/07/19 面试题
节能减耗标语
2014/06/21 职场文书
计划生育标语
2014/06/23 职场文书
2014年学校法制宣传日活动总结
2014/11/01 职场文书
2014年综合治理工作总结
2014/11/20 职场文书
2014年化验室工作总结
2014/11/21 职场文书
介绍长城的导游词
2015/01/30 职场文书
校车司机安全责任书
2015/05/11 职场文书
教师读书活动心得体会
2016/01/14 职场文书
2019年工作总结范文
2019/05/21 职场文书
Golang并发操作中常见的读写锁详析
2021/08/30 Golang
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript
windows系统搭建WEB服务器详细教程
2022/08/05 Servers