在這一課中,我們會介紹Python的一些進階特性,包括裝飾器、生成器和上下文管理器。
decorator_example.py
pythonCopy code
def my_decorator(func):
def wrapper():
print("函數執行之前的操作")
func()
print("函數執行之後的操作")
return wrapper
@my_decorator
def say_hello():
print("你好!")
say_hello()
# 輸出:
# 函數執行之前的操作
# 你好!
# 函數執行之後的操作
generator_example.py
pythonCopy code
def my_generator():
yield 1
yield 2
yield 3
for i in my_generator():
print(i)
# 輸出:
# 1
# 2
# 3
context_manager_example.py
pythonCopy code
class MyContextManager:
def __enter__(self):
print("進入上下文")
def __exit__(self, exc_type, exc_value, traceback):
print("退出上下文")
with MyContextManager():
print("在上下文中")
# 輸出:
# 進入上下文
# 在上下文中
# 退出上下文
請在相應的文件中輸入並運行上述代碼片段。
這些進階主題會幫助你撰寫更高效、更Pythonic的代碼。