DAY6 - os补充操作,发邮件,数据库操作,写excel,加密操作

Posted yonnia

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DAY6 - os补充操作,发邮件,数据库操作,写excel,加密操作相关的知识,希望对你有一定的参考价值。

1.Map-循环帮你调用函数

技术分享图片
 技术分享图片
**生成器的概念**
技术分享图片
技术分享图片
输出为:
技术分享图片
 技术分享图片
map返回的就是一个生成器
 

2.filter-把函数处理结果为false的结果过滤掉

技术分享图片
技术分享图片
比较map和filter的输出:
技术分享图片
技术分享图片

 

3.os的目录操作

技术分享图片

 

技术分享图片

4.OS里执行系统命令

技术分享图片

技术分享图片
我们可能会用到的一个查看系统日志的命令:
os.popen(‘top -n 1‘).read()
 
5.datetime模块
技术分享图片
技术分享图片
输出为:
技术分享图片
技术分享图片
输出为一个datetime的类型,如:
技术分享图片
技术分享图片
输出为:
技术分享图片
 技术分享图片
 

6.Random模块

技术分享图片

技术分享图片
输出为:
技术分享图片
技术分享图片
 

7.Log模块

技术分享图片
 技术分享图片

 

8.发邮件

第一步:需要先安装发邮件的模块
pip instal yagmail
 
第二步:并且需要在邮件中设置,以QQ邮箱为例:
技术分享图片
技术分享图片
第三步:先连接邮箱,再进行发邮件操作
技术分享图片
技术分享图片
如需要同时发送或者抄送多人:
技术分享图片
 技术分享图片

9.数据库操作

数据库分为两种:
  • 传统的关系型数据库:mysql, oracle, sql_server, sqllie, db2
会有明确的字段名:id name passwd createtime stu等
数据是存在磁盘上的
使用sql语句来操作数据
表和表之间是有关系的
  • 非关系型数据库:mongodb, redis
nosql
所有的数据都是key:value形式的
mongodb的数据是存在磁盘上的
redis的数据都是存在内存里的 

 连接mysql数据库

技术分享图片

技术分享图片
数据为:
技术分享图片
技术分享图片
其他的操作还有:
技术分享图片
技术分享图片
输出为:
技术分享图片
技术分享图片
但是,如果先运行了fetchall,再运行fetchone或者fetchmany,会获取不到,会返回none,这是类似于文件操作,指针已经移动到最尾部。
也可以执行insert语句:
技术分享图片
技术分享图片
但是这里需要注意的是,再执行完类似insert update这类sql语句之后,需要进行commit,如果不想进行手动commit
可以再进行数据库连接的时候设置autocommit=True:
技术分享图片
技术分享图片

连接redis数据库

先熟悉一下redis可视化工具redis desktop manager的使用,select 10代表切换到db10:
技术分享图片
 技术分享图片
在python中连接redis:
技术分享图片
技术分享图片
也可以设置数据失效时间,再redis desktop manager中可看到:
技术分享图片
技术分享图片
如果ttl=-1则表示永久有效
相关操作:
技术分享图片
 技术分享图片
在redis里可能还存在字典嵌套字典的数据,这种数据叫Bash类型,处理Bash类型的数据是另外一种方法:
技术分享图片
 技术分享图片
但是get得到的数据并不是字符串类型的而是bash类型的,所以可以写一个函数进行转换:
技术分享图片
技术分享图片

10.PYTHON的加密操作

技术分享图片
 技术分享图片

11.写EXCEL

技术分享图片
 技术分享图片

 

 
 
 
 

以上是关于DAY6 - os补充操作,发邮件,数据库操作,写excel,加密操作的主要内容,如果未能解决你的问题,请参考以下文章

python学习 -函数---递归--模块(os)--时间操作

day6 os模块

重修课程day6(python基础4之集合和文件操作)

python之路--day6---文件处理

操作log.py

python全栈开发补充复习os模块常用的一些操作