python的os

#os

  1. 获取当前目录

     import os
     print(os.path.abspath('.'))
     print(os.getcwd()) #当前文件所处目录
     print(os.path) #真正的系统目录
     files = os.listdir(os.getcwd())  # 列出目录下的文件
     
     #查看文件大小
     for file in files:
     	print(os.path.getsize(file))
    
  2. getcwd()

     import os 
     print('文件所在的目录为%s:'%(os.getcwd()))
     # ./表示当前目录
     #../表示上层目录
     print('当前目录下的文件和目录%s'%(os.listdir('./')))
     
     #列出当前目录下的所有目录
     my_dirs=[x for x in os.listdir('.') if os.path.isdir(x)]
     
     #列出所有的.py文件
     
     my_py=[x for x in os.listdir('.') if os.path.isfile(x) and os.path.splitext(x)[1]=='.py']
    
  3. 新建目录

     import os
     dir=os.path.join('public')
     os.mkdir(dir) #新建单个目录
     os.makedirs(pt) #新建多级目录
    

    两个路径合成一个时,不要直接拼字符串,而要通过os.path.join()函数,这样可以正确处理不同操作系统的路径分隔符。

    在Linux/Unix/Mac下,os.path.join()返回这样的字符串:
    part-1/part-2

    而Windows下会返回这样的字符串:
    part-1\part-2

     -创建绝对路径
     print(os.path.join('/home/kiosk', 'hello.png'))
     #返回一个绝对路径: 当前目录的绝对路径+ 文件名/目录名
     print(os.path.join(os.path.abspath('.'), 'hello.png'))
     os.makedirs(pt)
    
  4. 判断文件或者目录是否存在

     print(os.path.exists('../unit7'))
     print(os.path.exists('./b'))
    
  5. 删除目录

     os.rmdir('/Users/michael/testdir')
    
  6. 获取目录名或者文件名

     # filename = '/home/kiosk/Desktop/file'
     # print(os.path.basename(filename))     #目录
     # print(os.path.dirname(filename))      #文件
     
     import os
     import sys
     
     pt=sys.argv[0]
     
     name=os.path.basename(pt)
     print(name)
     
     path=os.path.dirname(pt)
     
     print(path)
    
  7. 拆分路径(获取文件名)

    拆分路径时,不要直接去拆字符串,而要通过os.path.split()函数,这样可以把一个路径拆分为两部分,后一部分总是最后级别的目录或文件名

     os.path.split('/Users/michael/testdir/file.txt')
    
  8. 创建文件/删除文件

     open(filename,'w')
     os.remove('00_ok.txt')
    
  9. 拆分路径(获取文件扩展名)

     os.path.splitext('/path/to/file.txt')
     #('/path/to/file', '.txt')
    
  10. 重命名文件

     os.rename('test.txt', 'test.py')
    
  11. 复制文件

     import shutil
    
     shutil.copy('user.txt','user.json')
    
  12. demo-显示所有视频格式文件,mp4,avi,rmvb

    import os

    def search_file(start_dir, target) :
    os.chdir(start_dir)

     for each_file in os.listdir(os.curdir) :
         ext = os.path.splitext(each_file)[1]
         if ext in target :
             vedio_list.append(os.getcwd() + os.sep + each_file + os.linesep) 
         if os.path.isdir(each_file) :
             search_file(each_file, target) # 递归调用
             os.chdir(os.pardir) # 递归调用后切记返回上一层目录
    

    start_dir = input(‘请输入待查找的初始目录:’)
    program_dir = os.getcwd()

    target = [’.mp4’, ‘.avi’, ‘.rmvb’]
    vedio_list = []

    search_file(start_dir, target)

    f = open(program_dir + os.sep + ‘vedioList.txt’, ‘w’)
    f.writelines(vedio_list)
    f.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值