Python---面向对象装饰器
2016-01-03 21:47
651 查看
Class类:
创建一个类:class 类名:
构造方法:def init(self),self代表当前类的引用,类似于java中的this
装饰器: @字符
在python语言中,一个函数的内部也可以定义一个函数,函数的参数类型也可以是一个一个函数
将一个函数作为另一个函数的装饰,思路:
模拟给一个汽车添加一个组件,在汽车类外部包裹一层组件类。
这里只是练习一下错误类型,实际不论输出什么都不会报错= =
在Python中可以使用@字符 为方法指定添加什么装饰
将上述代码修改后
创建一个类:class 类名:
构造方法:def init(self),self代表当前类的引用,类似于java中的this
class Student: def __init__(self, name, grade): # self相当于java中的this 代表这个类自己 self.name = name self.grade = grade def introduce(self): print("my name is "+self.name) print("my grade is "+self.grade) guo=Student("guo","100") guo.introduce()
装饰器: @字符
在python语言中,一个函数的内部也可以定义一个函数,函数的参数类型也可以是一个一个函数
将一个函数作为另一个函数的装饰,思路:
模拟给一个汽车添加一个组件,在汽车类外部包裹一层组件类。
def compose(compose_fun): def addcompose(): print("给这个汽车添加了一个" + compose_fun) return compose() def car(): try: component = input("请您输入要给汽车添加的组件") return component except SystemError as error: print("Please input a String Value " + error) compose(car())//用compose方法给汽车类添加装饰
这里只是练习一下错误类型,实际不论输出什么都不会报错= =
在Python中可以使用@字符 为方法指定添加什么装饰
将上述代码修改后
def compose(compose_fun): def addCompose(): print("给这个汽车添加了一个" + compose_fun()) return addCompose() @compose #添加装饰 def car(): component=input("请您输入要添加的组件") return "轮胎" print(car())
相关文章推荐
- python项目之 ftp服务器
- Python 递归 list不正确
- Python------异常处理
- MCMC(Markov Chain Monte Carlo)的理解与实践(Python)
- python环境安装和在eclipse中插件的使用
- Python---IO的使用
- 第2章 Python基础语法 -- 数据类型
- 【Python千问 2】Python核心编程(第二版)-- 欢迎来到Python世界
- python运维开发坎坷之路-01
- 【Python千问 1】Python核心编程(第二版)导读
- python对json的相关操作
- Install python opencv on mac
- Python两种列表翻转方法的效率比较
- python学习笔记-Day10--(twisted)
- python学习笔记-Day10--(进程\线程\协程)
- 自省 另外一种python 生成随机在base36 之间的兑换码生成。
- 初探python中的file类型
- Python【map、reduce、filter】内置函数使用说明(转载)
- Python Web中REST API使用示例——基于云平台+云服务打造自己的在线翻译工具
- 用python简单处理图片(5):图像直方图