zoukankan      html  css  js  c++  java
  • 我的python菜鸟之路15

    --------------------------- sys 模块和 os 模块----------------------------------

    • sys

      #练习1.用于计算同一内存地址有多少次指向
      import sys
      a = [11,22,33]
      b = a
      print(sys.getrefcount(a))
      
    • 知识补充

      • 换行符

      • 制表符

      • 回到当前行的起始位置

        #示例1
        print('12355666
        ',end='')
        print('你好')
        #输出结果为你好,将前面的12355666覆盖
        
        #示例2
        #进度条的生成
        import time
        for i in range(1,101):
            msg = '%s%%
        '%i
            print(msg,end='')
            time.sleep(0.1) 
        
    • 复制一个新的文件,并用进度条表示进度

      import os
      file_size = os.stat('MicrosoftOffice_2007_XiTongZhiJia.zip').st_size #获取字节大小
      print(file_size)
      read_size = 0
      with open('MicrosoftOffice_2007_XiTongZhiJia.zip',mode='rb') as f1,open('a.file',mode='wb') as f2:
          while read_size < file_size:
              chunk = f1.read(1024) #每次读1024个字节
              f2.write(chunk)
              read_size +=len(chunk)
              val =('%.4f'% (read_size/file_size *100)) #保留两位小数
              print('%s%%
      '%val,end='')
      
      
    • 删除指定的文件路径的目录

      #让用户执行脚本传入要删除的路径,在内部帮助用户将目录删除
      import sys
       print(sys.argv)
      在命令行中执行,可添加元素,获得列表
      #获取文件路径
      import shutil
      shutil.rmtree(path)
      #删除目录
      

    os模块

    和操作系统相关的数据

    • os.path.exists(path) 如果path存在,返回True;如果不存在,返回Flase

    • os.stat(path).st_size 获取文件大小

    • os.path.abspath() 获取一个文件的绝对(全)路径

      path = 'MicrosoftOffice_2007_XiTongZhiJia.zip'
      import os
      v1 = os.path.abspath(path)
      print(v1)
      
    • os.path.dirname(path) , 获得上级目录

      import os
      v = r'D:pythonpython.exe C:/code/untitled/DAY1.py' #r为转译字符类似于
      print(os.path.dirname(v))
      
      #关于转译字符r的补充
      print("jhsdfgv
      dfdtg\cdfgdd\s") #注意出现的次数,即使不是(s/r/t)时其第二个也是转译字符和只有一个是一样的
      
    • os.path.join , 路径的拼接

      import os
      path = r"C:codeuntitledlianxi"
      v = 'n.txt'
      result = os.path.join(path,v)
      print(result)
      
    • os.listdir , 查看一个目录下所有文件(第一层)

      import os
      path = r'C:codeuntitled'
      result = os.listdir(path)
      for i in result:
          print(i)
      
      
    • os.walk , 查看一个目录下的所有文件(所有层)

      import os
      result = os.walk(r'C:codeuntitled')
      for a,b,c, in result:
          print(a,1111,b,5555,c)
      #a:正在查看的目录;b:此目录下的文件夹;c:此目录下的文件
          for item in c:
              # print(item)
              path = os.path.join(a,item)
              print(path)
      
  • 相关阅读:
    Redis 读后小感
    Redis学习笔记十:独立功能之监视器
    Redis学习笔记九:独立功能之慢查询日志
    Redis学习笔记八:独立功能之二进制位数组
    Please restart this script from an administrative PowerShell
    MSBUILD : error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”
    Macaca之Android原理浅析
    Macaca 基础原理浅析
    您需要来自XXX的权限才能对此文件夹进行更改
    JS是按值传递还是按引用传递?
  • 原文地址:https://www.cnblogs.com/yangzilaing/p/13275211.html
Copyright © 2011-2022 走看看