python基础语法_学习笔记(六) _模块的原理、读excel、修改excel、写日志、发邮件、redis模块 和 requests模块

一、模块的原理

  1.模块(module):一个python文件就是一个模块,里面定义了各种变量,函数,类。

  2.模块有3个来源:

      a、自己写的模块

      b、标准模块,  os time random hashlib

      c、第三方模块    pymysql xlwt 等  

  3.import模块的实质 :  就是把这个python文件执行了一遍

  4. 查找模块的顺序

    a、导入模块的时候首先从当前目录下找

    b、如果当前目录下没有,就是去python的环境变量里面找

    注:

      if __name__ == '__main__':   的用法和区别: 用在本模块中,调试时,会调用 __name__ == '__main__'中的方法,但如果是用import 中导入的,则不会执行__name__ == '__main__'中的方法

      如:a.py和b.py 内容如下:

                

        运行a.py 模块 ,执行结果为:

        

        运行b.py 模块,执行结果为:

        

二、 读excel 

    python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。

    首先需要import xlrd

    sheet.row_values(0)           # 某一行的数据

    sheet.col_values(0)      # 某一列的数据
    sheet.cell(0,0).value    # 某个单元格的数据
    sheet.nrows( )    # 总共有多少行
    sheet.ncols( )     # 总共有多少列
   格式如下:
  
      
import xlrd

        book = xlrd.open_workbook('CJ_test.xls')
        sheet = book.sheet_by_index(0)
        print(sheet.row_values(0))#某一行的数据
        print(sheet.col_values(0))#某一列的数据
        print(sheet.cell(0,0).value)#某个单元格的数据
        print(sheet.cell(1,2).value)#某个单元格的数据
        print(sheet.nrows) #总共有多少行
        print(sheet.ncols) #总共有多少列

三、修改excel     
     
    修改excel 表格,必须要copy 一份出来
    例如:
       
import xlrd

        from xlutils import copy
        book = xlrd.open_workbook('students.xls')
        sheet0 = book.sheet_by_index(0)
        new_book = copy.copy(book) # 先copy一份excel表格再修改
        sheet = new_book.get_sheet(0)
        sheet.write(0,6,'年龄阶段')
        for i in range(1,sheet0.nrows):
          age = sheet0.row_values(i)[3]
          if age < 18:
            word ='未成年'
          elif 18 <= age <= 30:
            word = '年轻'
          else:
            word = '中年人'
          sheet.write(i,6,word)
        new_book.save('students.xls')

四、写日志
  这个模块,用的是我们老师自己写的模块,再环境中要安装 nnlog, 语句是:pip install nnlog
  
import nnlog

    log = nnlog.Logger('test.log',level='error',backCount=5,when='S')
    # D H M S
    log.debug('返回结果...')#一些调试信息,看变量值这些
    log.info('info...') #一些提示信息
    log.warning('waring')#出警告了
    log.error('error...')#出错的时候打印的

五、发邮件
  
  安装yagmail 模块,安装语句是:pip install yagmail
  步骤是:
    1.
邮箱的账号密码、用的是什么邮箱、163/腾讯/sina
     2.给谁发邮件、抄送给谁
     3.邮件的主题、邮件的正文、附件
   例如:
     

     

六、操作 redis 模块

    安装redis 模块,安装语句是:pip install redis 

    1.先导入redis 模块,用 import redis

    2.连接redis  redis.Redis(host= host,password= passwd,db=15,decode_responses=True), 

    decode_responses =True,是返回的bytes类型了,就是字符串类型
   3.r.set('yang','126fgfg',20)      设置数据,后面的20 是过期时间
   4.r.get('yang').decode()  根据设置的键yang,获取值, decode()  把字符类型变成字符串

    5. r.delete('yang')                         删除指定的key
    6.r.flushdb()           清除当前数据库的所有key
    7. r.flushall()           清除所有数据库的所有key
    8. r.keys()             获取当前数据库里面有那些key

    例如:

        

七、request模块  

    安装requests 模块,安装语句是:pip install request 

    1、先导入redis 模块,用 import request 

    2、print(req.json())     字典
    3、print(req.text)      字符串

    例如:

      url='https://aliimg.changba.com/cache/photo/18189396_640_640.jpg'

      req = requests.get(url)
      with open('aqmm.jpg','wb') as fw:
      fw.write(req.content)




    
原文地址:https://www.cnblogs.com/coldMoon0915/p/10882812.html