zoukankan      html  css  js  c++  java
  • python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六)


    文件夹遍历


    1.递归遍历


    import os
    
    allfile = []
    def dirList(path):
          filelist = os.listdir(path)
          for filename in filelist:
                filepath=os.path.join(path,filename)
                if(os.path.isdir(filepath)):
                      dirList(filepath)
                allfile.append(filepath)
          return allfile
    
    print dirList('.')


    2.用os.walk()


    os.walk() 返回一个生成器,每个列表有3个元素。各自是,当前文件夹。当前文件夹中的文件夹。当前文件夹中的文件

    比如:

    import os
    
    g = os.walk('.')
    for i in g:
          print i

    输出:
    ('.', ['tt'], ['1.txt', '111.py', '2.py', '3', '3.py', '4.py', '5.py'])
    ('.\tt', ['a'], ['34.txt'])
    ('.\tt\a', [], ['12.txt'])

    样例:获取每一个文件名称字

    import os
    
    g = os.walk('.')
    for root,dirs,files in g:
          for filename in files:
                print os.path.join(root,filename)



    异常处理


    try...except

    样例:
    try:
          f()
    except NameError,msg:
          print "error"


    假设有多个可能的异常,仅仅需在后面再加except语句就可以

    try...except...finally


    finally后面加的代码一定会运行

    样例:
    try:
          g()
          open('aaa.py')
    except NameError,msg:
          print "name error"
    except IOError,msg:
          print "io error"
    finally:
          print 'end'
    

    输出:
    name error
    end

    io error不会输出。由于 g()产生的NameError比open('aaa.py')产生的IOError早,它先中断了,后面的代码都没运行。


    raise


    发出异常

    样例:
    try:
          raise IOError("noting")
    except NameError,msg:
          print "name error"
    except IOError,msg:
          print "io error"
    finally:
          print 'end'
    




  • 相关阅读:
    MongoDB导入数据库异常——Failed: cannot decode array into a D
    Unity中实现文字竖排的方法
    MongoDB基础
    基于Vuforia的Unity增强现实应用开发
    Windows设置自动关机
    开源软件的License科普
    87版《红楼梦》与原著回目对应表
    WCF初探-23:WCF中使用Message类(下)
    WCF初探-22:WCF中使用Message类(上)
    WCF初探-21:WCF终结点(endpoint)
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5224272.html
Copyright © 2011-2022 走看看