Published on

白帽駭客工具實作03 - [基礎知識]Python版本演進、特點、撰寫風格及基礎語法

Authors
  • avatar
    Name
    Ed Li
    X

Python之父Guido van Rossum

Python版本演進

項次版本說明
1Python 1.01994 年發布: Python 1.0 正式版在 1994 年 1 月發布,標誌著 Python 作為一種正式的編程語言開始被廣泛使用。
2Python 2.02000 年發布: Python 2.0 於 2000 年 10 月發布,這個版本引入記憶體垃圾回收機制和更好的 Unicode 支持等新特性。
3Python 3.02008 年發布: Python 3.0 於 2008 年 12 月發布,這是一個不向後兼容的版本,主要修復 Python 2.x 的一些設計缺陷。Python 3.0 引入了許多改進,如統一的字符串類型、改進的整數除法、函式注釋和更多內置函式。過渡期: Python 2.x 和 3.x 系列曾經並行開發和使用了很長一段時間,幫助使用者從 Python 2 過渡到 Python 3。Python 2在2020 年 1 月 1 日正式停止支持。

Python特點

項次特點說明
1簡潔和可讀性Python 語法設計簡潔明了,強調代碼的可讀性,使得程式開發人員可以用更少的程式碼表達更多的功能。
2廣泛的應用領域Python 被廣泛應用於網絡開發、數據科學、人工智能、機器學習、自動化批次檔、系統管理、科學計算等多個領域。
3龐大的標準庫和生態系統Python 提供了豐富的標準庫,涵蓋了網絡通信、文件 I/O、數學運算等多個方面。Python 社群還提供了大量的第三方庫和框架,如 Django、Flask、NumPy、Pandas、TensorFlow 等。
4跨平台性Python 可以在多種操作系統上運行,包括 Windows、macOS、Linux 等,具備跨平台特性。

Python撰寫風格PEP8

在開始說明PEP8前,先說明一下什麼是PEP。PEP(Python Enhancement Proposal,Python 增強提案)用來規範與定義Python的各種強化、功能延伸等。PEP8為Python社群共通的開發風格準則,目的提供開發者寫出一致性的程式碼。很多開源的程式碼如Django等,也是以PEP8作為基準,再添加新風格來進行開發。

  • 命名規範:
項次名稱內容
1類別名稱駝峰命名法
2模組名稱以短名稱命名、全小寫的名稱;若為提高可讀性,可在模組名稱中使用底線 _
3套件名稱以短名稱命名、全小寫的名稱
4函式名稱小寫,若有多個單字時,可以使用底線分隔單字以提高可讀性
5變數名稱與函式名稱遵循相同規定
6常數名稱常數通常在模組層級定義,並全部使用大寫字母書寫,可用下底線分隔單字。例如: MAX_AGE 和 TOTAL
  • 縮排:使用4個空格。
def test_function():
    if True:
        print("Hello, edli_01!")
  • 行長度:最大為80個字符後換行。

  • 匯入:

#錯誤版本
import os, sys
#正確版本
import os
import sys
from math import sqrt, pi
  • 程式碼之編碼格式:UTF-8。

  • 空行:函式間應有2個空行。

def edli_01():
  pass
#空行01
#空行02 
def edli_02():
  pass
  • 單行文件字串:簡單的函式,可以使用單行文件字串。單行文件字串包含在一對三引號,於開始到結束的引號應在同一行內。
def read_edli_01_message():
    """回傳「閱讀完畢」字串。"""
    return finish
  • 多行文件字串:較複雜的函式、類或模塊等,應使用多行文列字串。多行文件字串的第一行為簡短總結,第二行為空,第三行開始為參數等資訊,詳見下面範例。
def read_edli_01_articles(want):
    """
    這是一個確認讀者是否想閱讀edli_01文章。
  
    參數:
        want (Boolean): 第一個布林值。

    回傳:
        Boolean: 回傳Ture or False。
    """
    return True

Python基礎語法

Python官網-Python教學


參考資訊

維基百科-Python之父Guido van Rossum

維基百科-Python的歷史

PEP 8 – Style Guide for Python Code

Python官網-Python教學


若各位讀者於本篇有習得新知或技術的話,請訂閱、按讚、分享及開啟小鈴鐺,成為支持筆者寫下去的動力。