zoukankan      html  css  js  c++  java
  • 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)




        
  • 相关阅读:
    ajax原理和XmlHttpRequest对象
    在vue项目中 如何定义全局变量 全局函数
    杂乱知识 -- 记录工作或学习中遇到的一些点
    JavaScript中的数组遍历forEach()与map()方法以及兼容写法
    cookie的存取删
    微信小程序中公用内容
    mysql 多实例
    yum 安装和卸载
    rpm 安装卸载
    git blame
  • 原文地址:https://www.cnblogs.com/coldMoon0915/p/10882812.html
Copyright © 2011-2022 走看看