博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python学习之模块导入,操作邮件,redis
阅读量:5166 次
发布时间:2019-06-13

本文共 2401 字,大约阅读时间需要 8 分钟。

python基础学习06

模块导入

  导入模块的顺序

    1.先从当前目录下找

    2.当前目录下找不到,再从环境变量中找,如果在同时在当前目录和环境变量中建立相同的py文件,优先使用当前目录下的

  导入模块的实质

    导入的python文件运行一次,并放到内存中,之后可以调用里面的变量或者方法

  py环境变量  环境变量不是系统的环境变量而是python自带的环境变量,存在python目录中

    查找环境变量  

      1.

        import sys

        print(sys.path)  #查看python的环境变量路径,py文件可以放在一些目录下就导入到环境变量中了

      2.

        pycharm→project→external library中也可以找到环境变量目录

    添加环境变量 

      1. 

        import sys      

        sys.path.append('xxxx路径文件')  #对于一些不经常使用的py文件,可以临时添加环境变量,但是要在开头定义,再使用

        sys.path.insert(0,'xxxx路径文件')  #指定要py文件优先查找

      2.

        pycharm→project→文件右键mark Directory as→sources root

  导入模块的使用

    import longsize as e  as相当于模块longsize可以用e来替换,只局限于在此py文件中调用

    from xxx import xx1,xx2,xx3...  导入xxx中从xx1,xx2,xx3

    from xxx.name import xx1  导入xxx中的name方法从xx1

    from xxx import *      导入xxx中的所有方法,但是*不实用  

python操作邮件

  安装

    pip install yagmail

    安装yagmail模块

  操作

import yagmail#首先要开启POP3/SMTP服务user_mail = 'xxxxx@qq.com'  #发送者邮箱password_mail = 'asdasdfasahd'  #发送者密码,如果是qq是授权码mail = yagmail.SMTP(host='smtp.qq.com',user=user_mail,  #host为qq第三方服务器                    password=password_mail,smtp_ssl=True)    #qq要写smtp_ssl=True           mail.send(to='yyyyyyyyy@qq.com',subject='你好啊朋友',cc='xxxxxx@.com',#to接收者邮箱 subject标题 cc抄送          contents='很高兴能和你聊天',  #contents内容          attachments='m2.py')      #attachments附件

python操作redis    redis是非关系型数据库,数据存在内存中

import redisip='ip'pwd= 'pwd'r= redis.Redis(host=ip,password=pwd,port=6379,db=1) #固定格式res= r.get('key')    #获取key中valueb= res.decode()     #把二进制转成字符串r.flushdb()     #清除db所有数据keyr.set('a','bbb',60)    #新增和修改key和value,TTL:计时器60秒后清除keyr.set('cc:b','bbb',60)   #冒号前面的是文件夹名r.keys()        #获取所有的keyr.keys('session*')  #支持模糊匹配和过滤r.delete('a')   #删除指定的key
r.ttl('key名')   #打印key中的ttl剩余时间 r.expire('woshirainbol', '400')   #为key设置ttl时间 r.mset(key1='value1', key2='value2',。。。。。)    #批量增加 r.mget(key1='value1', key2='value2',。。。。。)    #批量获取
#哈希类型   两层字典r.hset('bigkey','key','value')  #在bigkey中嵌套key和valuer.hget('bigkey','key')  #指定在bigkey中获取key中的值r.hdel('bigkey','key')  #删除指定的keyres = r.hgetall('bigkey')     #指定获取bigkey中的所有key值#获取上面二进制所有数据转成正常字典格式new ={}for k,v in res.item():    new[k.decode()]  = v.decode()print(new)#或者在最上方r中加入参数decode_responses=True,此参数不需要decode   #大佬笔记   #redis学习笔记

 

版权声明:本文原创发表于 博客园,作者为 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

转载于:https://www.cnblogs.com/RainBol/p/9787885.html

你可能感兴趣的文章
tableView
查看>>
Happy Great BG-卡精度
查看>>
Xamarin Visual Studio不识别JDK路径
查看>>
菜鸟“抄程序”之道
查看>>
Ubuntu下关闭防火墙
查看>>
TCP/IP 邮件的原理
查看>>
原型设计工具
查看>>
windows下的C++ socket服务器(4)
查看>>
css3 2d转换3d转换以及动画的知识点汇总
查看>>
【Java】使用Eclipse进行远程调试,Linux下开启远程调试
查看>>
对Vue为什么不支持IE8的解释之一
查看>>
计算机改名导致数据库链接的诡异问题
查看>>
Java8内存模型—永久代(PermGen)和元空间(Metaspace)(转)
查看>>
ObjectiveC基础教程(第2版)
查看>>
centos 引导盘
查看>>
Notes of Daily Scrum Meeting(12.8)
查看>>
Apriori算法
查看>>
onlevelwasloaded的调用时机
查看>>
求出斐波那契数组
查看>>
lr_start_transaction/lr_end_transaction事物组合
查看>>