python怎么导入时间-python初步学习-import和datetime模块
模块
一个完整大型的python程序是由模块和包的形式组织起来的,可见模块在python中的重要性。模块是一种组织型式,它许多有关联(关系)的代码组织放到单独的独立文件中。简单的说,可以把模块理解为一个包含了许多强大功能(方法)的包。在python标准库中就包含许多模块,有很多模块内的方法都会被经常使用到。
python模块有什么用?
模块内有许多函数方法,利用这些方法可以更简单的完成许多工作。
模块可以在文件中永久保存代码。在python交互式解释器中操作输入的代码,在退出python时是不会被保存的,而模块文件中的代码是永久存在的。
从实用性方面来说,模块可以跨系统平台使用,只需要Copy代码就可以。比如说,有一个全局对像,会被许多文件使用,这时为了方便把它写入一个模块中,再被调用是最好的方法。
import 语句语法
使用import语句导入模块,import语句语法如下:
import module
关键字 模块名
例如:
import sys #导入math模块
sys.path #调用math模块中的path属性
如果要同时导入多个模块,只需要在模块名之前用逗号进行分隔:
import module1,module2,module3……
import 语句导入模块顺序
在编写代码过程中,我们可能需要多种多样的模块。需要注意的是最好把导入模块放在代码的开头。为什么呢?
解释器在执行语句是,遵循作用域原则。因为这个作用域有关系,如果在顶层导入模块,此时它的作用域是全局的;如果在函数内部导入了模块,那它的作用域只是局部的,不能被其他函数使用。如果其他函数也要用到这个模块,还需要再次导入比较麻烦。
在用import语句导入模块时最好按照这样的顺序:
python标准库模块
python第三方模块
自定义模块
导入模块的几种方法
import
import sys
sys.path
from-import
相对第一种方法来说更加简单,不用写模块名,只需要写方法名
from subprocess import Popen, PIPE
a = Popen(['ls'],stdout=PIPE)
设置别名的方式
个人不推荐这种方法,因为后期会给维护代码增加工作量
import subprocess.Popen as f
a = f(['ls'])
datetime
datetime是python处理日期和时间的标准库
获取当前日期和时间
>>> from datetime import datetime
>>> now = datetime.now() # 获取当前datetime
>>> print(now)
2017-11-09 23:56:48.390000
>>> print(type(now))
datetime 加减
对日期和时间进行加减实际上就是把datetime往后或往前计算,得到新的datetime。加减可以用+和-运算符,不过需要导入timedalta这个类
注意timedelta 中只支持 days、seconds、microseconds
>>> from datetime import datetime, timedelta
>>> now = datetime.now()
>>> print now
2017-11-10 00:04:49.656000
>>> now += timedelta(hours=10)
>>> print now
2017-11-10 10:04:49.656000
>>> now += timedelta(hours=-10)
>>> print now
2017-11-10 00:04:49.656000
获取指定日期和时间
要指定某个日期和时间,我们直接用参数构造一个datetime
>>> from datetime import datetime
>>> dt = datetime(2015, 4, 19, 12, 20) # 用指定日期时间创建datetime
>>> print(dt)
2015-04-19 12:20:00
时间转换
datetime 转换为 timestamp
在计算机中,我们把1970年1月1日 00:00:00 UTC+00:00时区的时刻称为epoch time,记为0(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。
你可以认为:
timestamp = 0 = 1970-1-1 00:00:00 UTC+0:00
对应的北京时间是:
timestamp = 0 = 1970-1-1 08:00:00 UTC+8:00
可见timestamp的值与时区毫无关系,因为timestamp一旦确定,其UTC时间就确定了,转换到任意时区的时间也是完全确定的,这就是为什么计算机存储的当前时间是以timestamp表示的,因为全球各地的计算机在任意时刻的timestamp都是完全相同的(假定时间已校准)。
把一个datetime类型转换为timestamp只需要简单调用timestamp()方法:
>>> from datetime import datetime
>>> dt = datetime(2015, 4, 19, 12, 20) # 用指定日期时间创建datetime
>>> dt.timestamp() # 把datetime转换为timestamp
1429417200.0
timestamp转换为datetime
要把timestamp转换为datetime,使用datetime提供的fromtimestamp()方法:
>>> from datetime import datetime
>>> t = 1429417200.0
>>> print(datetime.fromtimestamp(t))
2015-04-19 12:20:00
timestamp也可以直接被转换到UTC标准时区的时间:
>>> from datetime import datetime
>>> t = 1429417200.0
>>> print(datetime.fromtimestamp(t)) # 本地时间
2015-04-19 12:20:00
>>> print(datetime.utcfromtimestamp(t)) # UTC时间
2015-04-19 04:20:00
str转换为datetime
很多时候,用户输入的日期和时间是字符串,要处理日期和时间,首先必须把str转换为datetime。转换方法是通过datetime.strptime()实现,需要一个日期和时间的格式化字符串:
>>> from datetime import datetime
>>> cday = datetime.strptime('2015-6-1 18:19:59', '%Y-%m-%d %H:%M:%S')
>>> print(cday)
2015-06-01 18:19:59
datetime转换为str
如果已经有了datetime对象,要把它格式化为字符串显示给用户,就需要转换为str,转换方法是通过strftime()实现的,同样需要一个日期和时间的格式化字符串:
>>> from datetime import datetime
>>> now = datetime.now()
>>> print(now.strftime('%a, %b %d %H:%M'))
Mon, May 05 16:28
python怎么导入时间-python初步学习-import和datetime模块相关推荐
- python怎么导入时间-Python的import导入与时间
一.模块与包 模块,在Python可理解为对应于一个文件.在创建了一个脚本文件后,定义了某些函数和变量.你在其他需要这些功能的文件中,导入这模块,就可重用这些函数和变量.一般用module_name. ...
- python怎么导入时间-python模块导入和time模块
1.模块格式 为了方便管理模块,python中又引了包(Package)这个概念.每个包下面都有一个__init__.py文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是 ...
- python怎么导入时间-Python,模块导入方式和time模块的使用
一.模块的导入 1. 模块导入会将要导入的文件执行一遍 2. 导入模块的名称就是我们定义的脚本或包的名称 3. 我们导入模块的过程总结就是:在指定的范围内搜索指定名称对 python 脚本或者包,将其 ...
- python怎么导入时间-python 插入日期数据到Oracle
[root@yyjk DATABASE]# cat DBI.py # -*- coding: utf-8 -*- import cx_Oracle import time import datetim ...
- python怎么导入视频-python怎么导入数据
通过标准的Python库导入CSV文件: Python提供了一个标准的类库CSV文件.这个类库中的reader()函数用来导入CSV文件.当CSV文件被读入后,可以利用这些数据生成一个NumPy数组, ...
- python怎么导入文件-Python模块导入详解
定义 模块:用来从逻辑上组织Python代码(变量.函数.类.逻辑)去实现一个功能.本质就是.py结尾的Python文件. 包:用来从逻辑上组织模块的(可以放一堆模块在目录下).本质就是一个目录(必须 ...
- python怎么导入视频-Python模块导入详解
定义 模块:用来从逻辑上组织Python代码(变量.函数.类.逻辑)去实现一个功能.本质就是.py结尾的Python文件. 包:用来从逻辑上组织模块的(可以放一堆模块在目录下).本质就是一个目录(必须 ...
- python怎么导入文件-Python文件如何引入?详解引入Python文件步骤
python基本语法--引入Python文件 1.新建python文件 :在同目录lib下创建mylib.py和loadlib.py两个文件 2.在mylib.py文件中创建一个Hello的类 并且给 ...
- python怎么导入包-Python模块导入与包构建最佳实践
[TOC] 最开始写程序的时候,都是一个文件里输入几行源码(python 的一个 web 框架bottle就特别强调自己是单文件框架).随着程程式变大变复杂,一个文件很难承载如此多的功能,因此将代码拆 ...
最新文章
- usaco street race(dfs)
- JAVA Thread线程异常监控
- Visual C++——无法响应WM_LBUTTONDBLCLK消息(鼠标左键双击)问题解决方案
- centos7防火墙操作
- 关于javascript作用域
- 使用log4j记录日志_使用log4j2免费分配日志记录
- ubuntu路由器联网_路由器及其协议简介| 联网
- 常州win8如何禁用应用商店_Win8系统当中Windows defnedder安全软件应该如何禁用?...
- (八)深入浅出TCPIP之TCP长连接与短连接详解
- php分页页数过多隐藏,织梦DEDE中内容页分页数目太多时隐藏方法
- 森源电气持续押注光伏 加强市场竞争力
- 人脸识别算法二:Fisherface(LDA)
- 【java设计模式】之 工厂(Factory)模式
- java 非模态_统计图钻取的明细报表在非模态窗口中显示
- 自己动手写操作系统2011040101
- log4j日志级别配置详解
- 【iTools】Xshell使用教程
- 科研人员论文投稿邮箱选择的问题
- tp5使用RabbitMQ的使用记录
- Ant-design 源码分析之数据展示(八)Descriptions