Concurrency_Programming

【Python教學】淺談 Concurrency Programming

發表於 留下留言分類為《04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

一. 為什麼需要 Concurrency ? 簡單來說 Concurrency Programming 就是能在同一時刻做兩件以上事情的能力,例如使用不同 CPU 分別運行程式來提高效率 ,或是當程式在等待執行結果時 (如等待 request 請求),先執行其他程式函式 (Coroutine),把浪費的 CPU 週期充分利用! 我們來看看 Golang 開發者之一 Rob Pike 對 Concu […]

python_pyenv_virtualenv_Max行銷誌

【Python教學】使用 pyenv 和 virtualenv 打造 Python 環境

發表於 留下留言分類為《04 Python 基礎教學, 10 所有文章

此篇先介紹如何檢查目前安裝過的 Python 環境和安裝路徑,以及介紹如何使用 pyenv 輕鬆地安裝和切換 Python 版本!搭配 virtualenv 用來建立完全隔離的 Python 虛擬環境的工具,為每個專案工程建立一套獨立的 Python 環境,從此不在擔心每個專案的套件版本。 本篇大綱: 檢查目前 Python 環境 查看目前使用 Python 版本 檢查過去安裝過的 Python […]

python_coroutine_協程

【Python教學】淺談 Coroutine 協程使用方法

發表於 留下留言分類為《04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇大綱: 什麼是 Coroutine (協程 / 微線程)? 使用 Python asyncio library 寫 Coroutine 一個簡單的範例 了解 async / await 語法糖 如何建立事件循環? 如何建立任務 Task? 如何同時運行多個 Tasks 任務? 一. 什麼是 Coroutine (協程 / 微線程)? 先來看看 Python官方對 Coroutine 的解釋: […]

mutli_processing_pool

【Python教學】淺談 Multi-processing pool 使用方法

發表於 留下留言分類為《04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇大綱: 簡單的 multi-processing pool 範例 建議使用處理程序 (process) 數量 了解 pool 能調用的方法(method) 到底有用 _async 是差在哪裡? map 和 starmap 到底差在哪裡? Callback? 取得回傳資料 補充 chunksize & maxtasksperchild 是什麼? 一. 簡單的 Multi-proces […]

python_gil_thread-saf_atomic

【Python教學】淺談 GIL & Thread-safe & Atomic operation

發表於 留下留言分類為《04 Python 基礎教學, 05 Python 爬蟲教學, 10 所有文章

本篇整理了關於 Python 為什麼會有 GIL 的出現、thread-safe 問題探討、以及 GIL 切換時機、和確保 thread-safe 的原子操作概念 (atomic operation),此篇未來會持續更新,希望對在了解 GIL 的你有幫助~ 一. 為什麼會有 GIL 的出現? In CPython, the global interpreter lock, or GIL, is a […]

Flask教學_Dockerfile + nginx + ssl

Flask 實作 Dockerfile + nginx + ssl 教學 (附GitHub完整程式)

發表於 留下留言分類為《04 Python 基礎教學, 06 Python Flask 教學, 10 所有文章

歡迎來到當 flask 遇上 docker,上集介紹了如何使用 Dockerfile 運行 flask,這集將會介紹如何用 Dockerfile + nginx 建立一個有 ssl 憑證的頁面。 Step 0 – 準備 ssl 憑證 Step 1 – 準備 Dockerfile 和 nginx.conf Step 2 – 運行 docker 此篇的完整程式碼放置 […]

python property

[Python教學]@property是什麼? 使用場景和用法介紹

發表於 留下留言分類為《04 Python 基礎教學, 10 所有文章

Python內建的 @property 用法,本篇描述了 property 的兩種特性,和一個實際應用上的場景,希望此篇講解對你有幫助。 Property 特性一:  ▍特性一:將 class (類) 的方法轉換為 只能讀取的 屬性 以下是一個 @property 簡單的使用方式:  ▍什麼是只能讀取的屬性? 首先我們先將 class 實例化 andy = Bank_acoun […]

python-oop

[Python教學]物件導向-Class類的封裝/繼承/多型

發表於 留下留言分類為《04 Python 基礎教學, 10 所有文章

本篇記錄了學習 Python 物件導向的筆記,從最初的 Class 類別定義開始、到物件導向的三大核心特性:繼承、封裝和多型,都有詳細的筆記和解釋。  ▍學習物件導向設計原因: 使程式碼的維護和擴充更容易 使人更容易閱讀理解程式碼邏輯  ▍本篇大綱 首先用 Class 來定義類別 OOP 特性一. 繼承 (inheritance) OOP 特性二. 封裝 (encapsulat […]

[Python教學] Class / Static /Abstract Method 初探

發表於 留下留言分類為《04 Python 基礎教學, 10 所有文章

本篇講解 Python Class 類中的多種方法形式:包含 Static method、 Class method 和 Abstract method,建議讀者們可以一起跟著文章敲一次 code,會有更深入的了解唷。 ▍本篇大綱如下: Static method 靜態方法:不帶實例,不帶 class 為參數的方法 Class method 類方法:不帶實例,帶有 class 為參數的方法 Abs […]

[Python教學] 裝飾詞原理到應用

發表於 留下留言分類為《04 Python 基礎教學, 10 所有文章

Python 裝飾詞 (Decorator) 被大量廣泛的使用在各方 library,是非常實用和必須了解的基礎,本篇介紹了從原理到應用,建議讀者可以跟著敲一次 code,會對裝飾詞有更深入的了解唷~ ▍Python 裝飾詞的優點: 降低程式碼重複率 易讀性高 靈活度高 ▍本篇的大綱如下: 裝飾詞原理 語法糖 (Syntax Candy) 副作用:函式名稱 裝飾詞觸發先後順序 帶參數 (*args […]