zoukankan      html  css  js  c++  java
  • python中OS模块的使用

    OS模块是python中用来对目录操作的一个模块。

    基本函数如下:

    os.mkdir():创建一个目录;os.makedirs():创建多层目录。

    os.rmdir():删除一个目录;os.removedirs():删除多层目录。

    os.listdir():列出目录下的目录及文件。

    os.getcwd():获取当前绝对路径。

    os.chdir():改变当前路径。

    os.walk():遍历给定路径下的目录和文件。

    基本使用如下:

    >>> import os
    >>> os.mkdir('text')
    >>> os.makedirs('a/b/c/d')
    >>> os.listdir('.')
    ['a', 'text', 'zz.py', '题目']
    >>> os.rmdir('text')
    >>> os.removedirs('a/b/c/d')
    >>> os.listdir('.')
    ['zz.py', '题目']
    >>> os.listdir('c:/')
    ['$Recycle.Bin', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'MSOCache', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'swapfile.sys', 'System Volume Information', 'Users', 'vnc', 'vnc.zip', 'Windows']
    >>> os.getcwd()
    'E:\1.个人网盘云端\2.学习成长\4.python\Demo'
    >>> os.chdir('c:/')
    >>> os.listdir('.')
    ['$Recycle.Bin', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'MSOCache', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'swapfile.sys', 'System Volume Information', 'Users', 'vnc', 'vnc.zip', 'Windows']
    >>> os.chdir('E:\1.个人网盘云端\2.学习成长\4.python\Demo')
    >>> os.listdir('.')
    ['zz.py', '题目']
    >>>

    两个小例子:遍历目录下的文件。

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import os
    
    def dirList(path):
        filelist = os.listdir(path)
        for filename in filelist:
            fpath = os.path.join(path,filename)
            if os.path.isdir(fpath):
                dirList(fpath)
            print(fpath)
    dirList('E:\1.个人网盘云端\2.学习成长\4.python\Demo\textdir')

    使用os.walk()遍历目录下的目录和文件。

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import os
    
    #Os.Walk()函数,遍历给定路径下的目录和文件
    dirt = os.walk('E:\1.个人网盘云端\2.学习成长\4.python\Demo\textdir')
    #返回一个元组,([路径][目录][文件])
    
    for path,dirlist,filelist in dirt:
        for filename in filelist:
            print(os.path.join(path,filename))

    os.walk模块返回的是一个元组,里面有3个列表,分别存放绝对路径、路径下的目录、路径下的文件。

    不过不能直接查看,它是一个walk的对象,需要遍历才能读取数据。

    测试:

    >>> import os
    >>> dirt = os.walk('E:\1.个人网盘云端\2.学习成长\4.python\Demo\textdir')
    >>> dirt
    <generator object walk at 0x04033DF0>
    >>> for path,dirlist,filelist in dirt:
        print(path,dirlist,filelist)
    
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdir ['file1', 'file2', 'file3', 'file4', 'file5', 'timu'] []
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdirfile1 [] ['文件1.txt', '文件2.txt']
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdirfile2 [] ['文件3.txt']
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdirfile3 [] []
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdirfile4 [] []
    E:1.个人网盘云端2.学习成长4.pythonDemo	extdirfile5 [] []

    os.walk()用的最多的应该就是里面的filelist,里面包含了所有文件名称。

    这里os.path.join(path,filename)的意思是将path和filename链接起来。下去试一试就明白了。


    读书和健身总有一个在路上

  • 相关阅读:
    联想 Vibe Shot(Z90-3) 免recovery 获取ROOT权限 救砖 VIBEUI V3.1_1625
    联想 Z5S(L78071)免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 10.5.370
    联想 Z5(L78011) 免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 10.5.254
    联想 S5 Pro(L78041)免解锁BL 免rec 保留数据 ROOT Magisk Xposed 救砖 ZUI 5.0.123
    第二阶段 冲刺八
    第二阶段 冲刺七
    第二阶段 冲刺六
    第二阶段 冲刺五
    代码大全阅读笔记03
    学习进度十二
  • 原文地址:https://www.cnblogs.com/Renqy/p/12800031.html
Copyright © 2011-2022 走看看