python import redis_Python自动化学习笔记(七)——import、操作redis、操作Excel、接口开发...

1.import

导入模块流程、导入的模块的实质

1、import xx:import 一个模块的实质就是把这个python文件从头到尾执行一遍

2、import模块的查找模块的顺序

从当前目录下找

sys.path

从上面2个目录都找不到,那就报错

3、如果想import一个py文件,有三种方法:

将文件拷贝到当前文件夹

将文件拷贝到sys.path中任意一个路径下

将文件拷贝到pycharm中一个文件夹,并将该文件设置为Sourses Root

2.操作redis

redis是非关系型数据库,数据用key-value的形式存储,不需要通过sql语句来查询数据

2.1 连接redis

import redis

r=redis.Redis(host=ip,password=password,port=6379,db=3,decode_responses=True) #连接redis #decode_responses=True,返回str,不加返回bytes类型

2.2 String类型数据的增删改查

1.查询:

r.get('lyc_session') #传入一个key,获取value,连接时如果加了decode_responses=True,返回str,不加返回bytes类型

2.新增/修改:

r.set('lyc_session',"'aaaaadfdgaaa':'哈哈哈'",100) #第一个参数是key,第二个参数是value,第三个参数是过期时间,不加就重启服务器才会失效

3.删除:

r.delete('lyc_session')      #参数是key,key不存在不会报错

2.3 hash类型

1.查询:

r.hget('sms_code','177') #获取值,{"a":11111,"b":46464}

r.hkeys('sms_code') #获取到这个key里所有内部key,返回一个list

r.hgetall('sms_code') #获取这个key里所有的内容,key:value形式

2.新增/修改

r.hset('sms_code','1134111','11111')

3.删除

r.hdel('key1','key2')   #删除指定的key,key1下的key2的内容

r.delete('key') #删除整个key,和string类型的使用一样

2.4 其他方法

r.type('key') #获取数据类型,传入一个key

r.flushall() #清空所有数据库里的数据

r.flushdb() #清空当前数据库里的数据

keys=r.keys() #获取所有的key,返回一个list

keys=r.keys('*lyc*') #模糊匹配

r.expire('key',10) #设置过期时间

2.5 一个练习

把redis数据库3的数据迁移到数据库4

importredis

ip='xxxx'password='xxx'r1=redis.Redis(host=ip,password=password,port=6379,db=3,decode_responses=True) #连接redis ,返回str

r2=redis.Redis(host=ip,password=password,port=6378,db=4,decode_responses=True) #连接redis #decode_responses=True,返回str,不加返回bytes类型

keys=r1.keys()for key inkeys:

res=r1.type(key)if res=='hash':

hash_data=r1.hgetall(key)for k,v inhash_data.items():

r2.hset(key,k,v)else:

value=r1.get(key)

r2.set(key, value)

3.操作Excel

3.1 写Excel

import xlwt

book=xlwt.Workbook()#新建一个excel

sheet=book.add_sheet('sheet1') #添加一个sheet页

sheet.write(row,col,value)  #在第row行,第col列的位置,插入value值

book.save('filename.xls')      #保存到filename这个文件,wps:xls,xlsx 微软:xls

3.2读Excel

import xlrd

book=xlrd.open_workbook('stu.xls')

sheet=book.sheet_by_index(0) #获取一张表

print(sheet.cell(0,0).value) #获取指定单元格的内容

print(sheet.row_values(0)) #获取整行的数据

print(sheet.col_values(0)) #获取整列的数据

print(sheet.nrows)        #获取行数

print(sheet.ncols)        #获取列数

for row in range(0,sheet.nrows): #获取所有数据

print(sheet.row_values(row))

3.3修改Excel

import xlrd

from xlutils import copy

book=xlrd.open_workbook('stu.xls')

new_book=copy.copy(book)    #得到一个新的book

sheet=new_book.get_sheet(0) #修改excel时候,只能用get_sheet()方法

sheet.write(0,0,'id')        #用write修改,传入行、列、值

new_book.save('stu1.xls')     #保存修改后的文件,原文件不变

4.接口开发

importflaskimporttoolsimportjson

server=flask.Flask(__name__)#新建一个服务,把当前python文件当作一个服务

@server.route('/login',methods=['get']) #装饰器,在服务里添加一个接口defhello():

username=flask.request.values.get('username').upper()#获取参数

pd=flask.request.values.get('password')

sql='select * from app_myuser where username="%s"'%username

res=tools.my_db(sql)ifres:if tools.my_md5(pd)==res.get('passwd'):

res={'code':0,'msg':'登录成功'}else:

res={'code':1,'msg':'密码错误'}else:

res= {'code': 2, 'msg': '用户不存在'}return json.dumps(res, ensure_ascii=False)#访问形式 ip:port/login

server.run(host='0.0.0.0',port=11134,debug=True)#启动服务,指定host='0.0.0.0',监听本机所有ip,局域网内的计算机才能访问#debug=True,修改代码后自动重新加载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值