zoukankan      html  css  js  c++  java
  • 学习python课程第十八天

    一. 常用模块:

    1.  sys 模块

      1.print(sys.path)

      #查看环境变量

      2.print(sys.modules)

      #查看已经加载的模块

      3.print(sys.argv)

      #获取终端调用时的参数

      4.print(sys.version)

      #获取解释器的版本信息

      5.print(sys.platform)

      #当前平台的名称

      6.sys.exit(0)

      #正常结束程序,后面的参数必须传整型.

      了解:

        print(sys.api_version)

        #接口的版本

        

        print(sys.maxsize)

        #当前最大的数值

        

        print(sys.maxunicode)

        #unicode拥有多少对应关系

      总结: 什么情况下能用sys?

        当你想看看当前的各种信息的时候.

    2.  os 模块

      1.print(os.makedirs('1/2/4'))

      #创建一个目录,可以递归创建.一层一层的创建

      2.print(os.mkdir('AA'))

      #创建一个目录

      3.os.removedirs('a/b/c')

      #递归删除,如果没有文件就删掉,有文件就保留

      4.os.rmdir('AA')

      #删除一个目录,后面的参数是目录名

      5.os.remove(r'一个路径')

      #给出一个路径,然后删除文件.(仅能删除文件)

      6.print(os.listdir(r'路径'))

      #列出添加的路径下的所有文件和文件夹名称

      7.os.rename('a','b')

      #重命名文件/目录

      8.print(os.sep)

      #获取当前平台的路径分隔符

      9.print(os.linesep)

      #获取当前平台的换行符

      10.os.environ

      #获取系统环境的变量

      了解:

        print(os.curdir)

        #当前执行文件所在的目录(是一个点)

        

        print(os.pardir)

        #当前执行文件的上一层目录(是两个点)

        

        print(os.environ)

        #获取系统的环境变量

        

        print(os.getcwd)

        #获取当前的工作目录

        

        os.chdir('')

        #切换工作目录. 后面添加上想要切换目录的路径

        os.name

        #输出字符串指示当前使用平台

        os.system('dir')

        #运行控制台的命令,直接显示

      总结: os模块主要用于与操作系统来进行交互.

    3. os下的path模块

      from os import path

      1.print(path.abspath('文件名'))

      #返回绝对路径,不管文件名存不存在,都会返回

      2.print(path.split('a/b/c.txt'))

      #把路径拆分为: 文件夹路径和文件名称

      3.print(path.dirname(__file__))

      #获取路径中的上一级文件夹

      4.print(path.basename('一个路径'))

      #返回路径最后一级的名称

      5.print(path.exists('一个路径'))

      #判断路径是否存在. 存在就是True,不存在就是False

      6.print(path.isabs('a/b/c'))

      #判断是否是绝对路径, linux下第一个是/就是绝对. win下盘符开始就是绝对

      7.print(path.isfile('文件名'))

      #判断文件是否存在,存在就是True.不存在就是False

      8.print(path.join('a','b','c'))

      #将多个名称拼接为路径,如果有多个起始盘符, 取最后一个

      示例:

      BASE_DTR2 = os.path.dirname(os.path.dirname(__file__))

      LOG_PATH2 = os.path.join(BASE_DIR2,'log','log.txt')

      #必须用相对路径拼接,不然就违反了跨平台的原则

      

      9.print(path.getsize('一个目录'))

      #计算出文件夹或文件的大小(多少字节)

      10.print(path.normcase('AABB//CC\'))

      #大写变小写, 斜杠根据当前平台来修改

      11.print(os.path.normpath('/a/b/.|,/ABCS'))

      #斜杠会修改为当前平台的分隔符, 可用执行..来返回上一级

      示例:  (拼接方式, 跨平台)

        print(os.path.normpath(__file__))

        print(os.path.normpath(os.path.join(__file__,'..','..')))

      

      总结: 都是跟一些路径来打交道

    4. random 随机数模块

      1.print(random.random())

      #默认从0到1.来取值

      

      2.print(random.randint(1,10))

      #1 - 10 包括1和10 的整数

      3.print(random.randrange(1,10))

      #1 - 10 包括1. 不包括10的整数

      4.print(random.uniform(1,3))

      #两边都包含的随机浮点数

      5.print(random.sample([1,2,3,4,5],3))

      #指定一个范围,并指定需要的随机个数

      6.ls = ['1','2','3','4']

       random.shuffle(ls)

       print(ls)

       #打乱顺序, 洗牌. 修改的是原油的列表

      7.print(random.choice([1,2,3]))

      #随机从列表里选一个,再用列表形式来返回值

      

      8.print(random.choices([1,2,3],k=2))

      #随机从列表里取值, 后面可以定义选择的次数,再用列表形式来返回值

      #随机验证码:  长度自定义,包括0-9  A-Z a-z

      def   get_auth_code(length):

          res = ' '

          for i in range(length):

            a = random.randint(0,9)

            b = chr(random.randint(65,90))

            c = chr(random.randint(97,122))

            s = random.choice([a,b,c])

            res += str(s)

          return  res

      print(get_auth_code(4))

    5. shutil 模块

      1.shutil.copyfileobj()

      #拷贝文件, 提供两个文件对象 长度表示缓冲区大小

      

      2.shutil.copyfile()

      #拷贝文件,提供两个文件的路径

      3.shutil.copymode()

      #拷贝文件权限, 提供两个文件路径

      4.shutil.copystat()

      #拷贝文件状态信息, 最后访问,最后修改,提供两个文件路径

      5.shutil.copy()

      #拷贝文件和权限 提供两个文件路径

      6.shutil.copy2()

      #拷贝文件和状态信息,提供两个文件路径

      7. shutil.ignore_patterns('mp3','*.py') #拷贝目录的时候想要忽略掉的文件

       shutil.copytree(src,dst,symlinks = False,igonore = None)

      #拷贝目录,symlinks默认False将软连接拷贝为硬连接 否则拷贝为软连接

      8.shutil.rmtree()

      #删除目录,可以设置忽略文件

      9.shutil.move()

      #移动目录和文件

     shutil 提供的文件压缩与解压缩 :

      

      压缩文件:

        shutil.make_archive('my压缩','zip',r'想要压缩的文件夹路径') #在参数里添加想要压缩后的文件名.类型,

        shutil.make_archive('my压缩','tar',r'想要压缩的文件夹路径')

        

      解压文件:   (shutil模块也有解压文件功能)

      zip式的解压:

        import  zipfile

        z= zipfile.Zipfile(r'想要压缩的文件夹路径','r')

        z.extractall(path=r'想要解压过的文件路径和名称')

        z.close()

      tar式的解压:

        import  tarfile

        t = tarfile.open(r'想要解压的文件','r')

        t.extractall(r'想要解压过的文件路径和名称')

        t.close()

      总结: 用于简化文件操作的模块.有很多非常简单的操作文件功能

      

        

        

        

      

      

      

        

      

  • 相关阅读:
    方差、协方差、相关系数的理解
    yii2原生sql
    Oracle中日期作为条件的查询
    IDEA 中tomcat图片储存和访问虚拟路径(图片和程序分家)
    nginx配置静态资源:配置绝对路径
    一般spring配置上下文
    spring boot 集成 redis lettuce(jedis)
    windows下面同时部署多个tomcat的方法
    oracel: 通过特殊表序列来实现oracle自增id (mybatis实现自增id)
    使用fastjson 进行jsonObject转实体类对象
  • 原文地址:https://www.cnblogs.com/lvyipin1/p/9800583.html
Copyright © 2011-2022 走看看