• 8-1 模块和异常处理


    一 模块

    1

    # 模块总结
    # 能不能导入模块 : 用sys.path查看
    # 导入模块的顺序 : 内置 扩展 自定义
    # 导入模块 : 相当于执行了这个模块,文件中的名字会被存储在一块独立的内存空间中

    # import
    # 在全局创建了一个模块名,指向属于这个模块的命名空间
    # 空间里存储了所有文件中的名字
    # 起别名 import ... as ..
    # 不推荐一行导入多个模块

    # from import
    # import后面的名字会出现在全局 ,相当于对独立命名空间中的一个引用
    # from import 也支持 as语句 也支持 导入多个名字
    # from import * 相当于导入所有名字,*和被导入模块__all__是互相影响的

    2 绝对导入和相对导入

    在glance同级目录下可以导入下面的命令:

     1 import glance  #绝对导入,其余的在init文件里面实现
     2 #在glace里面的init文件里写的:from glance import api
     3 #在api里面的init文件里写的:from glance.api import policy
     4 glance.api.policy.get()
     5 
     6 
     7 相对导入
     8 
     9 import glance
    10 #在glace里面的init文件里写的:from . import api
    11 #在api里面的init文件里写的:from .import policy
    12 glance.api.policy.get()
    二 异常处理
     1 #多分枝
     2 # s1 = 'hello'
     3 # try:
     4 #     int(s1)
     5 # except IndexError as e:
     6 #     print(e)
     7 # except KeyError as e:
     8 #     print(e)
     9 # except ValueError as e:
    10 #     print(e)
    1 #万能异常
    2 #
    3 # # s1 = 'hello'
    4 # try:
    5 #     int(s1)
    6 # except Exception as e:
    7 #     print(e)
    1 #常用的处理异常结构
    2 try:
    3     pass #可能有问题的代码
    4 except ValueError:  # 能预料到的错误
    5     pass
    6 except Exception as e:print(e) # 能处理错有的异常
    7 else:pass          # try中的代码没有错误的时候执行
    8 finally:pass    #无论如何都执行
    #主动触发异常
    # try:
    #     raise TypeError('类型错误')
    # except Exception as e:
    #     print(e)
    1 #断言 assert
    2 assert 1==1
    3 print('ok')
    4 # assert 1==2
    5 # print('error')



  • 相关阅读:
    python-day24(模块语法)
    python-day23(正则表达式,RE)
    python-day22(序列化)
    python-day21(模块初级)
    python-day20(继承)
    python-day19(约束和异常处理)
    python-day18(反射)
    延迟任务
    亚马逊服务器创建root用户
    sqlalchemy orm
  • 原文地址:https://www.cnblogs.com/huningfei/p/9117353.html
Copyright © 2020-2023  润新知