首页 > 代码库 > 常用模块详解

常用模块详解

一.模块

import 模块的实质就是把要导入模块里面的代码,从上到下执行一遍,   找模块的顺序是,先从当前目录下找,找不到的话,再环境变量里面找

模块分为三种:

1.标准模块:python自带的,不需要安装的,直接import就能用的

2.自己写的模块:也就是自己写的python

3.第三方模块:别人已经开发好的功能,需要安装的

第一种方式:这是操作系统命令,不是在python命令行里面执行

1. 将找到pip.exe且加到系统path环境变量里面

2.在DOS窗口执行pip install xxx  安装某个模块

3.输入pip list 查看已经安装的模块

4.输入pip uninstall  xxx卸载模块

5.在DOS窗口执行easy_install requests  #这个也是傻瓜式的

注意:pip这个模块呢,在python3里面是python自带的,安装完python就能直接用,但是在python2里面是没有这个模块的,需要你手动安装才能用

第二种方式,手动安装:

1、先下载安装包,直接百度搜比如说python requests模块

2、解压安装包

3、在解压的目录下执行 python setup.py install

 

二.软件开发规范

需要有相应的文件夹

Bin文件夹-存在执行文件

Config文件夹-存放配置文件

Data文件夹-存放数据

Logs文件夹-存放日志

Core文件夹-存放核心代码

Extra文件夹-存放扩展代码

README.md-存放使用说明

注意在pycharm中使用README的话,需要安装插件才行

三.Os模块

print(os.getcwd()) # =E:\牛牛课件\第五周 #取当前工作目录/所在上一级文件夹

print(os.chdir(r"e:\byz_code\day2"))#更改当前目录

print(os.mkdir("test1"))#创建文件夹,只能在当前目录下创建一层文件夹

print(os.rmdir("test1"))#删除指定的文件夹,只能删除空文件夹,且只能删除一个文件夹

print(os.makedirs(r"test1\test2"))#递归创建文件夹,父目录不存在时创建父目录 print(os.removedirs(r"test1\test2"))#递归删除空目录

print(os.remove(r"E:\byz_code\day4\a.txt"))#删除文件

os.rename("test","test1")#重命名

print(os.sep)#当前操作系统的路径分隔符

print(os.listdir(‘.‘))#列出一个目录下的所有文件夹和文件
[‘.idea‘, ‘day5‘, ‘day5.zip‘, ‘model.bak.py‘, ‘model.py‘, ‘model2.py‘, ‘第六周练习.py‘]

print(os.path.exists("hhaaa"))#目录/文件是否存在

print(os.path.isfile("bb.py"))#判断是否是一个文件

print(os.path.isdir("/usr/local"))#是否是一个路径

print(os.path.join("root",‘hehe‘,‘haha‘,‘a.log‘))

获取文件路径:

1).print(__file__)#代表当前文件

显示当前文件的路径:E:/牛牛课件/第五周/第六周练习.py

2).print(os.path.abspath(‘bb.py‘)) #获取绝对路径

获取文件的绝对路径,注意上传参数是一个文件:F:\第六周\练习\第六周练习.py

3.print(os.path.dirname) #获得文件的父目录

Eg:print(os.path.dirname(‘E:\牛牛课件\第五周\model‘))

返回:E:\牛牛课件\第五周---注意输入的是绝对路径,如果上传的没有父目录是查不到的

Eg:print(os.path.dirname(os.path.dirname(__file__))) #获取当前文件父级目录的上一级目录

三.SYS模块

sys.argv           命令行参数List,第一个元素是程序本身路径
sys.exit(n)        退出程序,正常退出时exit(0)
sys.version        获取Python解释程序的版本信息
sys.maxint         最大的Int值
sys.path           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform       返回操作系统平台名称
sys.stdout.write(‘please:‘)#向屏幕输出一句话
val = sys.stdin.readline()[:-1]#获取输入的值

四、time&datetime模块

1.time模块
一种是时间戳、一种是格式化时间、一种是时间元组
时间戳:从unix元年(1970.1.1)到现在的秒数
print(time.sleep(1))#休息几s
print(time.time())#获取当前时间戳1497767118.0882447--数字存储节省时间
print(int(time.time()))#获取当前时间戳1497767118.0882447--数字存储节省时间
注意:时间格式%Y年 %m月 %d天 %H小时 %M分钟 %S秒,以下是常用的时间格式:
print(time.strftime("%y-%m-%d %H:%M:%S"))# 17-06-18 14:38:32将时间元组转换成格式化输出的字符串
print(time.strftime("%Y-%m-%d %H:%M:%S"))#2017-06-18 14:38:32将时间元组转换成格式化输出的字符串
print(time.strftime("%Y.%m.%d %H:%M:%S"))#2017.06.18 14:39:45将时间元组转换成格式化输出的字符串
print(time.strftime("%Y-%m-%d"))# 2017-06-18将时间元组转换成格式化输出的字符串

2. datetime模块

print(time.strptime("20160204 191919","%Y%m%d %H%M%S"))#将格式化的时间转换成时间元组
返回内容:time.struct_time(tm_year=2016, tm_mon=2, tm_mday=4, tm_hour=19, tm_min=19, tm_sec=19, tm_wday=3, tm_yday=35, tm_isdst=-1)
print(time.struct_time)#<class ‘time.struct_time‘>时间元组
print(time.asctime())# Sun Jun 18 14:43:11 2017时间元转换成格式化时间
print(time.ctime(1497767118))# Sun Jun 18 14:25:18 2017时间戳转换成格式化时间
print(datetime.datetime.now())#2017-06-18 14:44:44.493744当然时间格式化输出
print(datetime.datetime.now()+datetime.timedelta(3))#3天后的时间
print(datetime.datetime.now()+datetime.timedelta(-3))#3天前的时间

常用模块详解