2023-08-30|閱讀時間 ‧ 約 3 分鐘

小白學Python的第十七堂課

    在這一課中,我們會介紹Python的一些進階特性,包括裝飾器、生成器和上下文管理器。

    1. 裝飾器 (Decorators) 裝飾器是一種可以修改其他函數的功能的函數。它們可以幫助你使代碼更簡潔,更Pythonic。
    • 檔名: decorator_example.py
    pythonCopy code
    def my_decorator(func):
    def wrapper():
    print("函數執行之前的操作")
    func()
    print("函數執行之後的操作")
    return wrapper

    @my_decorator
    def say_hello():
    print("你好!")

    say_hello()

    # 輸出:
    # 函數執行之前的操作
    # 你好!
    # 函數執行之後的操作
    1. 生成器 (Generators) 生成器是一種特殊的迭代器,可以只在迭代到它們時產生值。
    • 檔名: generator_example.py
    pythonCopy code
    def my_generator():
    yield 1
    yield 2
    yield 3

    for i in my_generator():
    print(i)

    # 輸出:
    # 1
    # 2
    # 3
    1. 上下文管理器 (Context Managers) 上下文管理器用於設定資源在某個代碼塊之前的分配,並在代碼塊結束後的釋放。
    • 檔名: 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的代碼。

    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.