在日常的开发工作中,我们要写很多的python代码,如果都写在一个文件中,会导致代码特别难维护,为了拓展代码的可维护性,我们把函写在不同的文件里,这样每个文件包含的文件就比较少,逻辑更加清楚。在python中,我们创建的文件基本都是以.py结尾,那一个.py的文件就称之为模块。
为了方便管理方便管理模块,python中又引了包(Package)这个概念。每个包下面都有一个init.py文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。init.py可以是空文件,也可以有Python代码,因为init.py本身就是一个模块,举个例子:test目录下面有init.py, aaa.py,bbb.py三个文件,如下图所示:
[root@localhost ~]# tree test
test
├── aaa.py
├── bbb.py
└── init.py
如果是本地导入文件,直接使用:import filename
如果导入的是一个包,该包下面必须是有init.py文件才可以导入,否则报错,只有有了init.py文件,python解析器才会把这个目录当成是的包
常用的导入模块常用的格式:
form xxx import xxx
import xxx
在导入的时候,.py的后缀直接省略,如果是多级的包,或者想导入包里面的函数等,可以使用from进行导入,举个例子:
在chao这个Package下面写一个简单的模块:
def hello():
print (“hello word !”)
创建一个demo1来导入这个模块并使用
from chao import test
test.hello()
hello word !
直接导入系统模块:
import os
time
#time模块基本不用与取时间,取时间推进
- 1
- 2
- 3
- 4
- 5
输出结果会1秒打印一个数字直到打完
0
1
2
datetime
1, 先导入datetime类
2, 通过datetime的now方法就获得当前所需要的时间
3, datetime还是有好多方法的,可以获取year, month,等,请通过dir()方法查看
4, 此时我们获得的now_time还是一个datetime类,所以我们需用用strftime方法转换成字符串,strftime的参数就是最终需要字符串的形式。
5, Strftime需要便是时间的参数有很多,下面我们介绍一下最长用的一些参数:
格式参数:
%Y 带世纪部分的十制年份
%m 十进制表示的月份
%d 十进制表示的每月的第几天
%H 24小时制的小时
%M 十时制表示的分钟数
%S 十进制的秒数
%c 标准时间,如:04/25/17 14:35:14 类似于这种形式
这几个参数就是最常用到的我们用的时间
6,Timedelta可以接收days和seconds两个参数,正数代表几天之前的,负数代表几天之前的
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
2017-11-09 14:20:03.955000
2017-11-09 14:20:03
11/09/17 14:20:03
2017-11-08 14:20:03.955000
2017-11-08 14:20:03
2017-11-10 14:20:03.955000
时间格式转化
时间的三种存在方式:时间对象,时间字符串,时间戳
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
2017-04-25 11:59:58
type ‘datetime.datetime’
2017-04-25 11:59:58
type ‘str’
1510150491.54
2017-11-08 22:14:51.539000