为了实现对程序特定功能的调用和存储,人们将代码封装起来,可以供其它程序调用,可以称之为模块。 使用模块的好处:
程序可扩展性
减少程序代码
方便程序架构的更改 Python 自带有200多个常用模块, Python官网现在已收集了2000多个模块,你基本上可以找到你想要的任何功能
import 模块的引入
import module1[, module2[,... moduleN]
如,导入系统模块
import math,os,sys
制作模块
vim first_module.py
#!/usr/bin/python name = ‘my first module ‘ def print_name(): nama= raw_input(‘what is your name?\n‘) print ‘hello,‘,name return
导入某个module中的所有元素
想把目录变成导入的包,把目录的中所有元素一起导入,在目录下创建__init__.py文件中写入
__all__ = [‘module_13‘, ‘module_12‘] ##模块元素名
再倒入时为了让.py文件不执行,需要在文件末尾添加如下
if __name__ == ‘__main__‘: ##如果手动执行 __name__方法为__main__,则执行函数, query()
import 导入first_module
>>> import first_module ##导入 >>> dir(first_module) ##查看属性,方法 [‘__builtins__‘, ‘__doc__‘, ‘__file__‘, ‘__name__‘, ‘__package__‘, ‘name‘, ‘print_name‘] >>> first_module.print_name() ##执行.print_name()方法 what is your name? laing hello, my first module >>>
datetime 模块
是Python处理日期和时间的标准库。
>>> from datetime import datetime >>> now = datetime.now() # 获取当前datetime >>> print(now) 2017-11-09 23:50:41.356000 >>> print(type(now)) <class ‘datetime.datetime‘>
格式参数:
%Y 带世纪部分的十制年份
%m 十进制表示的月份
%d 十进制表示的每月的第几天
%H 24小时制的小时
%M 十时制表示的分钟数
%S 十进制的秒数
%c 标准时间,如:04/25/17 14:35:14 类似于这种形式
时间的三种存在方式:时间对象,时间字符串,时间戳。
(1) 字符串转datetime:
from datetime import datetime, timedelta string = ‘2017-11-09 23:50:41‘ time1 = datetime.strptime(string, ‘%Y-%m-%d %H:%M:%S‘) print(time1) print(type(time1)) 结果: 2017-11-09 23:50:41 <type ‘datetime.datetime‘>
(2) datetime转字符串:
from datetime import datetime, timedelta string = ‘2017-11-09 23:50:41‘ time1 = datetime.strptime(string, ‘%Y-%m-%d %H:%M:%S‘) print(time1) print(type(time1)) time1_str = datetime.strftime(time1, ‘%Y-%m-%d %H:%M:%S‘) print(type(time1_str)) print(time1_str) 结果: 2017-11-09 23:50:41 <type ‘datetime.datetime‘> <type ‘str‘> 2017-11-09 23:50:41
(3)时间戳转时间对象:
from datetime import datetime, timedelta import time time1 = time.time() print(time1) time1_str = datetime.fromtimestamp(time1) print(time1_str) print(type(time1_str)) 结果: 1493107955.66 2017-11-09 23:50:41.660000 <type ‘datetime.datetime‘>
解释:
1, datetime模块是包装了time模块的,所以只需要了解datetime模块就可以。
2, time.time()是或者当前时间的时间戳,时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
3, datetime下面下面有个函数fromtimestamp(时间戳)会把时间戳自动转换成datetime类型
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">