Python 3.8 版本

最有趣的創新:

  • 賦值表達式:

    新的 := 運算子允許您為表達式內的變數賦值。 例如:
    如果 (n := len(a)) > 10:
    print(f"列表太長({n} 個元素,預計 <= 10)")

  • 僅位置參數:

    現在您可以指定哪些函數參數可以透過命名參數語法傳遞,哪些不能。 例子:
    def f(a, b, /, c, d, *, e, f):
    印製(a、b、c、d、e、f)

    f(10, 20, 30, d=40, e=50, f=60) # 好
    f(10, b=20, c=30, d=40, e=50, f=60) # 錯誤,`b` 不能是命名參數
    f(10, 20, 30, 40, 50, f=60) # 錯誤,`e` 必須是命名參數

    此變更為開發人員提供了一種保護 API 使用者免受函數參數名稱變更影響的方法。

  • 支援 f-strings = 用於自記錄表達式和偵錯:

    添加糖來簡化調試/記錄訊息。
    N = 42時
    print(f'你好世界{n=}。')
    # 將列印「Hello world n=42」。

  • 修正了finally區塊中的continue關鍵字(之前不起作用)。

其他:

  • 您可以明確指定字節碼快取的路徑,而不是預設的 __pycache__。
  • 調試和發布版本使用相同的 ABI。

來源: linux.org.ru

添加評論