python语言(五)匿名函数、读写excel、操作数据库、加密、redis操作

一、匿名函数

递归、就是调用自己

1 def func():
2     num = int(input('num:'))
3     if num % 2 ==0:
4         print('是偶数')
5         return
6     else:
7         func()
8 func()  # 递归最多循环999次

匿名函数lambda

1 f = lambda x,b:str(x+b)
2 result = f(1,2)
3 print(f)

二、读写excel

 1 import xlwt
 2 book = xlwt.Workbook()
 3 sheet = book.add_sheet('sheet1')
 4 sheet.write(0,0,'名字')
 5 sheet.write(1,0,'张三')
 6 sheet.write(2,0,'李四')
 7 sheet.write(3,0,'王五')
 8 
 9 sheet.write(0,1,'手机号')
10 sheet.write(1,1,'18235437789')
11 sheet.write(2,1,'13875437919')
12 sheet.write(3,1,'18645438531')
13 
14 book.save("students.xls")
15 
16 stus=[
17     [
18         "id",
19         "name",
20         "sex",
21         "age",
22         "addr",
23         "grade",
24         "phone",
25         "gold"
26     ],
27     [
28         314,
29         "矿泉水",
30         "",
31         18,
32         "北京市昌平区",
33         "摩羯座",
34         "18317155663",
35         14405
36     ],
37     [
38         315,
39         "矿泉水",
40         "",
41         27,
42         "上海",
43         "摩羯座",
44         "18317155664",
45         100
46     ],
47     [
48         5985,
49         "矿泉水",
50         "",
51         18,
52         "北京市昌平区",
53         "班级",
54         "18513867663",
55         100
56     ]
57 ]
58 
59 for row,stu in enumerate(stus):
60     for col,field in enumerate(stu):
61         sheet.write(row,col,field)
62 book.save('students.xls')

三、操作数据库mysql

 1 import pymysql
 2 
 3 def op_mysql(sql):
 4     db_info = {'user': 'jxz', 'password': '123456', 'host': '118.24.3.40', 'db': 'jxz',
 5                'port': '3306', 'charset': 'utf8', 'autocommit': 'True'}
 6     conn = pymysql.connect(**db_info) # 建立连接
 7     cur = conn.cursor(pymysql.cursors.DictCursor)  # 游标
 8     cur.execute(sql) # 执行sql语句,inset\update\delete
 9     result = cur.fetchall()
10     cur.close()
11     conn.close()
12     return result
13 
14 ip="118.24.3.40"
15 user = 'jxz'
16 password="123456"
17 db='jxz'
18 port=3306
19 charset='utf8'
20 conn=pymysql.connect(host=ip,user=user,password=password,db=db,port=port,charset=charset,autocommit=True)
21 
22 cur = conn.cursor()# 游标
23 
24 sql = 'select * from app_myuser limit 15;'
25 cur.execute(sql) # 执行sql语句
26 one = cur.fetchone()
27 many = cur.fetchmany(2)
28 all = cur.fetchall()
29 
30 cur.close() # 关连接
31 conn.close() # 关游标
32 
33 print(one)
34 print(many)
35 print(all)

四、MD5加密

 1 import hashlib
 2 
 3 # s='admin123'
 4 # print(s.encode())
 5 # m = hashlib.md5(s.encode())
 6 # result = m.hexdigest() # 获取加密后的结果
 7 # print(result)
 8 
 9 def md5(s,salt=''):
10     new_s = str(s) + salt
11     m = hashlib.md5(new_s.encode())
12     return  m.hexdigest()
13 
14 
15 import base64
16 
17 s='哈哈哈哈'
18 b = base64.b16encode(s.encode())  # 加密
19 result=b.decode()
20 print(result)
21 
22 b = base64.b64decode( '5ZOI5ZOI5ZOI5ZOI' ) #解密
23 print(b.decode())

五、redis操作

 1 import redis
 2 
 3 # 关系型数据库
 4 # mysql 、 oracle 、 sqlserver 、 sqlite
 5 
 6 
 7 # 非关系型数据库 NoSql
 8 # mongodb  、 redis
 9 # redis 每秒钟达到10w次读写,存在内存里面
10 r = redis.Redis(host='118.24.3.40',password='HK139bc&*',port=6379,db=0,decode_responses=True)
11 
12 r.set('dabaobao','{"msg":"hejfdsfdsaj dlajfwajofjdsa是范德萨范德萨"}')
13 info = r.get('dabaobao')
14 print(info)
15 print(info.decode()) # 显示中文
16 
17 # r.delete('mjz_students')
18 # r.set('mjz_students','{"msg":"s fsada sfa fdasf as "}')

 

猜你喜欢

转载自www.cnblogs.com/zibinchen/p/11780279.html