Python(九):递归+内置函数+第三方模块+md5加密+操作mysql

递归

定义:递归就是函数自己调用自己,最多可循环调用999次

 内置函数

1、sorted()排序,生成的是列表

2、map()帮你循环调用函数的,保存返回值,返回的是一个list。map接受一个函数名和序列

3、filter:过滤器,帮你循环调用函数,如果函数返回false,那么就过滤掉这个值,是指从你传入这个list里面过滤

4、max()求最大值

5、sum()求和

6、round:保留几位小数

7、chr:把数字转成对应的ascii码表里对应的值

8、ord:把字母转成对应的ascii码表里对应的数字

9、dir:查看某个对象里有哪些方法

10、bool:布尔类型的,返回TRUE false

11、eval()执行一些简单的Python代码,运算、定义变量

12、exec#执行一些复杂的代码,exec函数没有返回值就是none

13、zip():把多个list揉到一起,把多个list变成了多维数组

 14、lambda : 匿名函数,功能很简单的一个函数,用完一次就拉倒

 第三方模块

 定义:别人写好的模块,直接安装就可以用。

1、pip install xxx
  pip问题
  1、提示没有pip命令的,
    把python的安装目录、
    安装目录下面的scripts目录加入到环境变量里面
  2、Unknown or unsupported command 'install'
    1、先执行 where pip
    2、找到不是python目录下叫pip的文件,改成其他的名字就ok了
    3、电脑里面装了多个python
  python2 python3
    1、先去python2安装目录里面把python.exe的名字改成python2.exe
    2、再把python3安装目录里面的python.exe名字改成python3.exe
    python2 -m pip install xxx
    python3 -m pip install xxx

2、手动安装
1、.whl
    pip install /Users/nhy/Downloads/PyMySQL-0.9.2-py2.py3-none-any.whl
2、.tar.gz
    先解压
    然后在命令行里面进入到这个目录下
    python setup.py install

 md5加密

对字符串生成密文,进行加密,md5加密是不可逆的,只能加密,不能解密。

加盐:安全上的策略,可以使密文更长,更安全

正常123456密文为:e10adc3949ba59abbe56e057f20f883e

加完盐之后的密文为:1105181fc7e681c00acd72da2188a887

撞库:由于MD5是不可解密的,但是某些软件还是可以把密文对应的字符串给找出来,这就是因为撞库了。

          即常用的字符串对应的密文存在了别人的数据库里面了。

#e10adc3949ba59abbe56e057f20f883e 123456
#0192023a7bbd73250516f069df18b500 admin123

操作mysql

step1、需要安装pymysql模块

执行select语句

执行插入语句

定义一个操作mysql的函数

def my_db(host,user,passwd,db,sql,port=3306,charset='utf8',autocommit=True):
conn=pymysql.connect(host=host,user=user,password=passwd,db=db,
port=port,charset=charset,autocommit=autocommit)
cur=conn.cursor()
cur.execute(sql)
res=cur.fetchall()
cur.close()
conn.close()
return res


原文地址:https://www.cnblogs.com/qiaomeiling/p/10095364.html