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 相关文章推荐
10个易被忽视但应掌握的Python基本用法
Apr 01 Python
Python实现信用卡系统(支持购物、转账、存取钱)
Jun 24 Python
详解python并发获取snmp信息及性能测试
Mar 27 Python
Python进程间通信Queue实例解析
Jan 25 Python
python读取和保存视频文件
Apr 16 Python
python检索特定内容的文本文件实例
Jun 05 Python
python抓取需要扫微信登陆页面
Apr 29 Python
Python字典的概念及常见应用实例详解
Oct 30 Python
详解Python Opencv和PIL读取图像文件的差别
Dec 27 Python
pytorch 模型的train模式与eval模式实例
Feb 20 Python
零基础小白多久能学会python
Jun 22 Python
python文件目录操作之os模块
May 08 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
oracle资料库函式库
2006/10/09 PHP
允许phpmyadmin空密码登录的配置方法
2011/05/29 PHP
PHP MySQL应用中使用XOR运算加密算法分享
2011/08/28 PHP
php获取客户端电脑屏幕参数的方法
2015/01/09 PHP
加速IE的Javascript document输出的方法
2010/12/02 Javascript
js作用域及作用域链概念理解及使用
2013/04/15 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
2013/11/17 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
JavaScript高级程序设计(第三版)学习笔记1~5章
2016/03/11 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
2016/09/23 Javascript
不使用 JS 匿名函数理由
2017/11/17 Javascript
vue中的$emit 与$on父子组件与兄弟组件的之间通信方式
2018/05/13 Javascript
微信小程序按钮去除边框线分享页面功能
2018/08/27 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
2020/08/27 Javascript
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
Python实现ssh批量登录并执行命令
2016/10/25 Python
Python实现判断一个字符串是否包含子串的方法总结
2017/11/21 Python
浅谈python函数调用返回两个或多个变量的方法
2019/01/23 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
python3 下载网络图片代码实例
2019/08/27 Python
Python任务调度利器之APScheduler详解
2020/04/02 Python
Python之Sklearn使用入门教程
2021/02/19 Python
四方通行旅游网:台湾订房、出国旅游
2017/09/20 全球购物
艺术系应届生的自我评价
2013/10/19 职场文书
书香家庭事迹材料
2014/05/09 职场文书
党的群众路线专项整治方案
2014/11/03 职场文书
工程安全生产协议书
2014/11/21 职场文书
2014年乡镇民政工作总结
2014/12/02 职场文书
中学生思想品德评语
2014/12/31 职场文书
公司奖励通知
2015/04/21 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
图书馆义工感想
2015/08/07 职场文书
2016大学军训通讯稿
2015/11/25 职场文书