列表推导式
[表达式 for 变量 in range(n) if 条件] 等效于
for 变量 in in range(n):
if 条件:
表达式
优点:书写方便,缺点:不易读
注意:用的是方括号,如果是小括号则不是列表推导式,而是生成器(不做要求)
Lambda匿名函数
lambda 变量:表达式 表达式是函数的处理逻辑,冒号前面的返回值
例如实现5的阶乘 1*2*3*4*5=120
优点:书写方便,缺点:不易读,只能写简单功能,只能使用一次
os模块
os是操作系统模块
1.getcwd()获取当前目录:
2. chomd() 修改文件权限:仅适用于linux,不适用于windows 1执行、2写、4读
3.chdir()更改当前路径:
4. mkdir()新建文件夹:可以用绝对路径,也可以用相对路径
5. rmdir()删除文件夹:只能删除空文件夹
6. makedirs()递归创建文件夹:如果没有test1,也会新建test1
7. removedirs()递归删除文件夹:会把test1和test3都删除
8. listdir()获取文件夹下的文件:返回的是一个列表 (不显示子文件夹中的文件)
9. rename()重命名:
10.stat()获取文件属性:
11. remove()删除文件:
12.sep获取路径分隔符:
13.linesep获取行分隔符:
14. pathsep获取环境变量分隔符:
15.environ获取环境变量:
16.name获取系统名称:windows是nt,linux是posix
17.system() 执行操作系统命令:会有乱码,而且不能是动态命令:如果是top,要改为top -n 1
18. popen() 执行操作系统命令:不会有乱码
19.path.abspath() 获取文件绝对路径:
20.path.split() 分隔文件夹和文件:
21.path.join() 合并路径:
22.path.dirname() 获取父文件夹:
23.path.basename() 获取末级文件夹:
24.path.exists() 判断路径是否存在:
25.path.isabs() 判断是否是绝对路径:
26.path.isfile() 判断是否是文件:
27.path.isdir() 判断是否是文件夹:
28.path.isdir() 判断文件(夹)大小:字节
29.path.walk() 获取文件夹中所有文件和文件夹:
只显示路径
只显示文件夹
只显示文件
sys模块
1.platform 获取平台名称: windows是win32 ,linux是linux2
2.path 获取python的环境变量:
3.argv 获取解释器的参数: 注意,第一个参数是文件名
time模块
时间格式有时间戳、字符串、元组。时间戳和字符串不能直接转换,需要通过元组:时间戳<=>元组<=>字符串
1.time() 获取当前时间戳: 时间戳是浮点数
2.strftime() 获取当前时间字符串: 也可以将元组转字符串
3.gmtime() 获取标准时间元组:
4.localtime() 获取本地时间元组:东八区=标准时区+8小时 也可以将时间戳转元组
5.mktime() 元组转时间戳:
6.strptime() 字符串转元组:
datetime模块
datetime模块和time模块相比,优势在于方便算时间差
1.datetime.today() 获取当前时间: 格式为datetime.datetime
2.date.today() 获取当前日期: 格式为datetime.date
3.datetime.timedelta() 获取时间差:
4.strftime() 将datetime转换为字符串:
5. datetime.fromtimestamp() 将时间戳转换为datetime:
pymysql模块
用来连接mysql数据库
1、 连接库: pymysql.connect()
2、 建立游标: 连接.cursor()
3、 执行sql: 游标.execute() 注意select 不需要commit ,其他sql都需要commit
4、 获取结果: 游标.fetchall()
5、 关闭游标: 游标.close()
6、 关闭连接: 连接.close()
xlwt模块
用来写入excel,只能是xls格式,xlsx不能用这个模块
1、 打开工作簿: Workbook()
2、 新建工作表: 工作簿.add_sheet()
3、 写表头和内容: 工作表.wirte() (行号,列号,内容),注意行列都是从0开始计数
4、 保存: 工作簿.save()
hashlib模块
用于加密
1.md5():md5摘要算法 (sha256等摘要算法,用法一样)
2.update():输入byte字符串 注意如果是str要先转换成byte
str转byte: ’’.encode()=b’’
byte转str: b’’.decode()=’’
3.hexdigest():获取摘要,格式仍为str