异常:
    当Python检测到一个错误时,解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的"异常"
 
捕获异常:
     格式:try+执行代码······except+处理异常的代码······
try:
print num
except IOError:
print('产生错误了')

把可能出现问题的代码,放在try中

把处理异常的代码,放在except中

【except】代码当发生异常才会执行,一般用于程序的修复操作
                (except捕获的错误类型是IOError)
【try】捕捉异常,错误代码之后的内容不会执行
①捕捉指定异常:except 异常名
②捕捉多个异常:except(异常名1,异常名2)
多次捕捉异常,只有第一个才会执行
[Exception]是python里大部分异常的父类,可以用来捕捉大部分常见的异常,自定义一个异常必须要继承Exception
获取异常的信息:except 异常名 as 别名 (except不能直接设置别名)
 
抛出异常: raise 语句
    工作里有时候捕捉异常只是为记录异常信息,此时可以直接使用raise把捕捉到的异常再次抛出。
 
模块:import 导入
查看搜索路径:sys.path
当你导入一个模块,Python解析器对模块位置的搜索顺序是:
  1. 当前目录
  2. 如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录。
  3. 如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/
  4. 模块搜索路径存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。
{模块名要符合标识符的命名规则}
{自己设定的模块不能和系统设定的模块同名}
 
导入方法:
  1. import 模块名         调用:模块名.功能名
  2. import 模块名 as 别名      调用:别名.功能名
  3. from 模块名 import 功能名      调用:功能名
  4. from 模块名 import 功能名 as 别名      调用:别名
  5. from 模块名 import * (导入所有功能)     调用:功能名
  {__all__变量:控制这当前模块有哪些功能可以被*导入;只影响*号导入}
  • 如果一个文件中有__all__变量,那么也就意味着这个变量中的元素,不会被from xxx import *时导入
 
 
导入一个模块时会直接运行模块里的代码
if__name__ == '__main__':  # 必写
    测试模块,导入模块时设置不运行
 
 
包(文件夹)
    导入方法:
  1. import 包名.模块名         调用:包名.模块名.功能名
  2. from 包名 import 模块名      调用:模块名.功能名
  3. from 包名 import 模块名 as 别名      调用:别名.功能名
  4. from 包名.模块名 import 功能名      调用:功能名
  5. from 包名 import * (导入所有)
要使用星号导入包下的所有模块,包里必须__init__.py文件
文件里必须要有__all__变量 变量里必须要写明可以被导入模块
__init__可以用来初始化当前包的执行环境(在python2里必须要有__init__.py文件)
平级的包间不能互相导入

(九)Pycharm异常、模块的更多相关文章

  1. Java开源生鲜电商平台-异常模块的设计与架构(源码可下载)

    Java开源生鲜电商平台-异常模块的设计与架构(源码可下载) 说明:任何一个软件系统都会出现各式各样的异常与错误,我们需要根据异常的情况进行捕获与分析,改善自己的代码,让其更加的稳定的,快速的运行,那 ...

  2. pycharm异常问题之Unable to save settings: Failed to save settings. Please restart PyCharm

    pycharm异常之Unable to save settings: Failed to save settings. Please restart PyCharm 今天一不小心将电脑关了,但是关机之 ...

  3. PyCharm导入模块报No model named

    PyCharm导入模块报No model named 引言 在PyCharm中同目录下import其他模块,出现No model named ...的报错,但实际可以运行的情况. 这很可能是因为PyC ...

  4. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十九:SDRAM模块② — 多字读写

    实验十九:SDRAM模块② — 多字读写 表示19.1 Mode Register的内容. Mode Register A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A ...

  5. day70_10_16drf组件响应模块,异常模块和序列化模块。

    一.解析模块 为什么要配置解析模块? 1)drf给我们通过了多种解析数据包方式的解析类. 2)我们可以通过配置来控制前台提交的哪些格式的数据后台在解析,哪些数据不解析. 3)全局配置就是针对每一个视图 ...

  6. DRF框架(二)——解析模块(parsers)、异常模块(exception_handler)、响应模块(Response)、三大序列化组件介绍、Serializer组件(序列化与反序列化使用)

    解析模块 为什么要配置解析模块 1)drf给我们提供了多种解析数据包方式的解析类 form-data/urlencoded/json 2)我们可以通过配置来控制前台提交的哪些格式的数据后台在解析,哪些 ...

  7. drf框架 - 解析模块 | 异常模块 | 响应模块

    解析模块 为什么要配置解析模块 1)drf给我们提供了多种解析数据包方式的解析类 2)我们可以通过配置,来控制前台提交的哪些格式的数据后台在解析,哪些数据不解析 3)全局配置就是针对每一个视图类,局部 ...

  8. 第二章、drf框架 - 请求模块 | 渲染模块 解析模块 | 异常模块 | 响应模块 (详细版)

    目录 drf框架 - 请求模块 | 渲染模块 解析模块 | 异常模块 | 响应模块 Postman接口工具 drf框架 注册rest_framework drf框架风格 drf请求生命周期 请求模块 ...

  9. drf解析模块,异常模块,响应模块,序列化模块

    复习 """ 1.接口:url+请求参数+响应参数 Postman发送接口请求的工具 method: GET url: https://api.map.baidu.com ...

  10. Django(50)drf异常模块源码分析

    异常模块源码入口 APIView类中dispatch方法中的:response = self.handle_exception(exc) 源码分析 我们点击handle_exception跳转,查看该 ...

随机推荐

  1. scss-@extend

    @extend指令用于共享规则和选择器之间的关系.它可以扩展所有其他类的样式在一个类中,也可应用于自己特定的样式. 查看如下scss@extend示例: .style{ font-size: 30px ...

  2. Required Integer parameter 'XXX' is not present

    1.异常提示: DEBUG o.s.w.s.m.m.a.ServletInvocableHandlerMethod - Error resolving argument [2] [type=java. ...

  3. 对象大小对比之Comparable与Comparator

    一 概述 1.Comparable与Comparator使用背景 数值型数据(byte int short long float double)天生可对比大小,可排序,String实现了Compara ...

  4. Oracle运行依赖的服务

    1.Oracle ORCL VSS Writer Service. Oracle卷映射拷贝写入服务,VSS(Volume Shadow Copy Service)能够让存储基础设备(比如磁盘,阵列等) ...

  5. Linux 一直提示 login incorrect

  6. 大数据的正确用法你get到了吗?

    Azure 镜像市场已于2016年9月21日正式上线,在这个统一的集成平台中,客户可以轻松地浏览.搜索和选择一系列来自第三方的应用和解决方案,并可以将其快速一键部署到 Azure 实例当中. 在移动为 ...

  7. oracle-2_dblink的创建和使用

    一.创建dblink 1.查询创建dblink表 SELECT * FROM DBA_DB_LINKS; ); BEGIN SELECT COUNT(*) INTO I FROM DBA_DB_LIN ...

  8. Python——追加学习笔记(二)

    文件处理 # 文件内移动 seek()方法可以在文件中移动文件指针到不同的位置,offset字节代表相对于某个位置偏移量,默认为0,代表从文件开头算起,1代表从当前位置算起,2代表从文件末尾算起. s ...

  9. python接口测试-项目实践(三)数据的处理示例

    三 数据处理 枚举值的转换.如接口返回1-5,需转成对应的中文. typecap = findinfo_from_api(result, 'TypeCap') dictcap = {': '微盘'} ...

  10. Jmeter入门19 保存测试结果(或从文件读取结果)

    以聚合报告为例,其他监听器有write results to file的类似. 首先 为了避免每次保存的测试报告被覆盖,我们在testplan下添加两个参数:项目名和当前时间(毫秒级) 其次 添加聚合 ...