2018年4月17日笔记

  • 装饰器

作用:在不改变原函数功能的前提下,给现有函数新增功能

装饰器通过@来使用,相当于把原函数作为参数,传给现有函数

  • 例1: 已有函数hello()如下,在hello()函数打印结果前后各加一行字符,作为现有函数的打印结果

      def hello():

        print("Hello World!")

  •  例2:在例1的基础上,原函数hello()带有参数

  •  例3:在例2原函数带参数的情况下,现有函数startEnd()也带有参数

  • 个人总结:

在原函数和现有函数都带参数的情况下(例3):

  1. 先传现有函数startEnd()本身的参数author
  2. 再将原函数hello()作为参数fun,传给现有函数startEnd()
  3. 最后传原函数hello()的参数name
  • 命名规范
  1. 函数名的首字母小写,函数名中每个单词的首字母大写(首字母除外),如 def newFunc():
  2. 类名的首字母大写,类名中每个单词的首字母大写,如 class NewClass():
  3. 在进行类的实例化时,对象名要和类名对应起来,且首字母小写,如 newClass = NewClass()

  •  模块、类、函数的区别
  1. 模块module:是一个 Python 文件,以 .py 结尾,包含了 类、函数、变量的定义和Python语句
  2. 类class:用来描述具有相同的属性和方法的对象的集合
  3. 函数function:组织好的,可重复使用的,用来实现单一,或相关联功能的代码段
  4. 模块 > 类 > 函数
  5. 模块和目录的区别:模块必须有__init__.py文件
原文地址:https://www.cnblogs.com/karl-python/p/8870912.html