异常:
    当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. ArcGIS 10.3编译旧版本Addin错误的解决办法

    ArcGIS10.2下VS2010的AddIn,在10.3下在VS2012下重新编译出现missing ESRI ArcGIS Add-in SDK错误,导致无法生成esriAddIn安装文件. 该问 ...

  2. Oracle 查看表占用的空间大小

    select TABLE_NAME , num_rows * avg_row_len /1024/1024 AS KJfrom ALL_tables WHERE TABLE_NAME IN (sele ...

  3. c#利用三层架构做一个简单的登录窗体

    就个人而言,三层架构有点难理解,不知道该如何下手,各层与各层之间怎么调用 最近一直在研究三层架构,经过网上学习与多方打听写一下自己的心得.有不足之处,可以评论和私聊探讨 言归正传: 三层架构(3-ti ...

  4. oozie调用java实例------shell action

    Oozie提供了一个方便的方式来运行任何命令.这可能是Unix命令,Perl或Python脚本,甚至java程序都可以通过Unix shell调用.shell命令运行在任意的Hadoop集群节点上,并 ...

  5. Arcgis Javascript中geometryEngine报错’hq‘of undefined的解决方法

    这个问题困扰了我一个星期,原因是使用geomagicbuffer时候,有的线可正常使用,有的就直接报错,一直没有解决,后来发现是api自己的bug导致的 干脆直接读代码,在geometryEngine ...

  6. 初学DLX

    前言 \(DLX\),全称\(Dancing\ Links\ X\),即舞蹈链算法. 这是一个十分高效且实用的算法,它主要用于求出精确覆盖问题的一组解.(貌似重复覆盖问题也可以,但我不会\(2333\ ...

  7. Node.js使用MySQL数据库中对RowDataPacket对象的使用

    使用Node.js开发使用MySQL数据库的网站,在查询后返回一RowDataPacket类型的对象 原先使用toString()方法一直得到仅为object的字符串,无法使用 后思考,才发现忽略了其 ...

  8. Window下搭建foundation apps环境

    Window下搭建foundation apps环境 框架:AngularJS.Foundation, 构建工具:Gulp, 开发环境:node.js. 操作系统:windows (一)环境准备 1 ...

  9. Python-利用flask模块创建web接口

    一.创建一个实现登录的接口 import flask from flask import request #获取参数 # import json #post请求传入json对象时,通过json获取参数 ...

  10. 【题解】洛谷P3399 丝绸之路

    我丑,话说在前头 题目: https://www.luogu.org/problemnew/show/P3399 一道挺简单的DP 思路不难想 但是蒟蒻总是写错初始化啥的 思路 定义f[i][j]为第 ...