Python零基礎學習筆記(二十五) 裝飾器

2021-09-19 19:33:57 字數 965 閱讀 3763

'''

概念:是乙個閉包,把乙個函式當作引數返回乙個替代版的函式

本質上是乙個返回函式的函式

'''#簡單的裝飾器

def func1():

print("my name is jjking.")

def func2():

print("******************")

func1()

func2()

def func3(func):

def inner():

print("******************")

func()

return inner

#f是func1的加強版本

f = func3(func1)

f()def outer(func):

def inner(age):

if age < 0:

age = 0

func(age)

return inner

#使用@符號將裝飾器應用到函式

#python2.4支援使用@符號

@outer

def say(age):

print("my age is %d"% (age))

#say = outer(say)

say(-12)

def outer(func):

def inner(*args, **kwargs):

#新增修改的功能

print("&&&&&&&&")

func(*args, **kwargs)

return inner

@outer

def say(name, age):

print("my name is %s, i am %d years old."%(name, age))

say("jjking", 23)

Python零基礎學習筆記(二十二) set

set 類似dict,是一組key的集合,不儲存value 本質 無序和無重複元素的集合 用途 經常用於去除list和tuple中的重複元素 建立 建立set 需要乙個list或者tuple或者dict作為輸入集合 重複元素在set中會自動被過濾 set1 set 1,2,2,2,3,4,5 pri...

Python零基礎學習筆記(二十四) 函式

認識函式 在以惡完整的專案中,某些功能會反覆的使用,那麼 會將功能封裝成函式,當我們要使用這些功能的時候 直接呼叫函式即可 本質 函式就是對功能的封裝 優點 1 簡化 結構,增加了 的復用度 重複使用的程度 2 如果想修改某些功能或修改某個bug只需要修改相應的函式即可 定義函式 格式 def 函式...

Python零基礎學習筆記(二十三) 迭代器

from collections import iterable,iterator 可迭代物件 可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 可以用isinstance 去判斷乙個物件是否是iterable物件 可以直接作用於for的資料型別一般分兩種 1 集合類資料型別 lis...