python类、方法、继承、模组、异常、抛出异常raise实例讲解
时间:2018-11-07
本文章向大家介绍python类、方法、继承、模组、异常、抛出异常raise实例讲解,需要的朋友可以参考一下
类和方法
创建类
class A(object):
def add(self, a,b ):
return a+b
count = A()
print(count.add(3,5))
初始化工作
class A():
def __init__(self,a,b):
self.a = int(a)
self.b =int(b)
def add(self):
return self.a+self.b
count = A('4',5)
print(count.add())
9
继承
class A():
def add(self, a, b):
return a+b
class B(A):
def sub(self, a,b):
return a-b
print(B().add(4,5))
9
模组
也叫类库和模块。
引用模块
import...或from ... import...来引用模块
引用时间
import time
print (time.ctime())
Wed Nov 7 16:18:07 2018
只引用ctime()方法
from time import ctime
print(ctime())
Wed Nov 7 16:19:53 2018
全部引用
from time import *
from time import *
print(ctime())
print("休眠两秒")
sleep(2)
print(ctime())
Wed Nov 7 16:26:37 2018
休眠两秒
Wed Nov 7 16:26:39 2018
模块调用
目录样式
project/
pub.py
count.py
pub.py
def add(a,b) return a +b
count.py
from pub import add print(add(4,5))
9
跨目录调用
目录样式
project
model
pub.py
count.py
from model.pub import add
print add(4,5)
--
这里面有多级目录的还是不太了解,再看一下
异常
文件异常
open('abc.txt','r') #报异常
python3.0以上
try:
open('abc.txt','r')
except FileNotFoundError:
print("异常")
python2.7不能识别FileNotFoundError,得用IOError
try:
open('abc.txt','r')
except IOError:
print("异常")
名称异常
try:
print(abc)
except NameError:
print("异常")
使用父级接收异常处理
所有的异常都继承于Exception
try:
open('abc.txt','r')
except Exception:
print("异常")
继承自BaseException
Exception继承于BaseException。
也可以使用BaseException来接收所有的异常。
try:
open('abc.txt','r')
except BaseException:
print("异常")
打印异常消息
try:
open('abc.txt','r')
print(aa)
except BaseException as msg:
print(msg)
[Errno 2] No such file or directory: 'abc.txt'
更多异常方法
try:
aa = "异常测试"
print(aa)
except Exception as msg:
print (msg)
else:
print ("good")
异常测试
good
还可以使用 try... except...finally...
try:
print(aa)
except Exception as e:
print (e)
finally:
print("always do")
name 'aa' is not defined
always do
抛出异常raise
from random import randint
#生成随机数
number = randint(1,9)
if number % 2 == 0:
raise NameError ("%d is even" %number)
else:
raise NameError ("%d is odd" %number)
Traceback (most recent call last):
File "C:/Python27/raise.py", line 8, in
- 生产环境大型sql语句调优实战第一篇(二) (r2笔记32天)
- 生产环境大型sql语句调优实战第一篇(一) (r2笔记第31天)
- 讨论 | 你是否遇到过你完全不能理解的机器学习概念?
- 【专业技术】C++里面重要的几个关键字的用法
- sql monitor的使用(一) (r2第30天)
- sql_profile的使用(一) (r2笔记29天)
- 关于权限设置的一个小把戏(r2第27天)
- R语言实现混合模型
- 数据迁移判断非空约束(r2笔记45天)
- 【专业技术】linux下socket编程
- oracle并行的小细节(r2笔记44天)
- python实现朴素贝叶斯模型:文本分类+垃圾邮件分类
- 使用闪回查询备份数据(r2笔记43天)
- 生产环境sql语句调优实战第四篇(r2笔记41天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- TF入门05-实验过程管理
- [LeetCode]709. To Lower Case
- ISO C forbids comparison between pointer and integer [-fpermissive]
- 【疑难杂症】解决-TensorFlow “FutureWarning: Conversion of the”
- [Deep-Learning-with-Python] 文本序列中的深度学习
- TN-SCUI2020挑战赛详细讲解
- QSignalMapper使用以及替换方法
- 对于组件的可重用性,大佬给出来6个级别的见解,一起过目一下!
- 多个线程为了同个资源打起架来了,该如何让他们安分?
- 实战|记录一次渗透测试项目
- SVN工具分析
- 客服MM被投诉说下单耗时很长,老板下令必须控制在1秒以内
- 介绍两个刷 SQL 题的网站
- Spring MVC 你必须关注点
- 微信小程序开发实战(12):滑杆组件(slider)和form组件