Python 3.13.0:開発効率とパフォーマンスを向上させるための主要な更新
Pythonは、シンプルで読みやすい機能で開発者に愛されており、バージョン3.13.0のリリースにより、多くのハイライトが追加されています。この記事では、Python 3.13.0のメインアップデートに焦点を当て、この最新バージョンの力を理解するのに役立ちます。
locals()
関数の改善dbm
モジュールを更新しましたインタラクティブなインタープリターは、マルチラインの編集と色の出力をサポートするためにアップグレードされ、ユーザーエクスペリエンスと視覚効果が向上し、Pypyの機能に一部触発されています。これらの改善は、開発者がコードをより簡単に作成およびデバッグするのに役立ちます。
例:
def Greet(名前): f "hello、{name}!" 印刷(挨拶( "world"))
出力:
Python 3.13.0は、グローバルインタープリターロック(GIL)を無効にする実験モードを導入します。これにより、複数のスレッドが同時に実行でき、この機能はWindowsとMacOSの両方のインストーラーで使用できます。マルチスレッドアプリケーションのパフォーマンスを向上させ、最新のマルチコアプロセッサをより有効に活用します。
例:
スレッドをインポートします def print_numbers(): 範囲のIの場合(5): 印刷(i) スレッド= [] _の範囲(5): スレッド= threading.thread(ターゲット= print_numbers) threads.append(スレッド) thread.start() スレッドのスレッドの場合: thread.join()
出力:
このリリースには、コードの実行中にコードの一部をコンパイルして実行するように設計された実験的なJITコンパイラが含まれています。
まだ初期段階にありますが、この機能は将来のリリースで大幅なパフォーマンスの向上をもたらす可能性があり、PythonがJavaやC#などの言語との競争を改善するのに役立ちます。
locals()
関数の改善locals()
組み込み関数の動作は、返されたマップを変更する際に明示的なセマンティクスを提供するために改善されました。この改善により、デバッガーがより一貫して実行できるようになります。
この変更は、ローカル変数マッピングと相互作用するときに予測可能な動作を確保することにより、開発者に役立ちます。
例:
def emple_function(): x = 10 y = 20 local_vars = locals() local_vars ['x'] = 5#ローカル変数を変更するx、yを返す print(emple_function())
出力:
<code>(10, 20)</code>
Python 3.13.0には、新しいバージョンのMimallocメモリアロケーターが含まれています。これはオプションであるが、プラットフォームでサポートされている場合はデフォルトで有効になっています。このアロケーターは、特に多数のドキュメント文字列を使用するアプリケーションのメモリ使用量を削減するのに役立ちます。
効率的なメモリ処理は、アプリケーションのパフォーマンスを改善し、メモリの消費を削減するのに役立ちます。
例:
def large_docstring_function(): "" "これは、メモリを保存するために先行インデントを削除する方法を示すために設計された大きなドキュメント文字列を備えた関数です。" "" "" 合格
dbm
モジュールを更新しましたdbm
モジュールは、新しいデータベースファイルを作成するときにデフォルトでdbm.sqlite3
バックエンドを使用するようになり、その機能と信頼性が向上します。
この変更により、SQLiteのパワーを活用することにより、 dbm
モジュールの使用が簡素化されます。
例:
DBMをインポートします dbm.open( 'emple.db'、 'c')をdbとして: db ['key'] = 'value' print(db ['key'])#output:value
出力:
<code>b'value'</code>
MACOSの最小サポートバージョンは、10.9から10.13(High Sierra)に更新されました。これは、古いMacOSバージョンがサポートされなくなったことを意味します。
この変更により、開発者は最新のMacOS機能と最適化に集中し、現在のシステムとの互換性を確保できます。
Python 3.13.0は、WebAssembly System Interface(WASI)をレベル2サポートにアップグレードし、Emscriptenは公式にサポートされなくなりました。さらに、iOSとAndroidは、サードレベルのサポートプラットフォームとして分類されています。
この分類は、開発者がさまざまなプラットフォームでPythonを使用するときに予想されるサポートと安定性のレベルを理解するのに役立ちます。
タイプモジュールの新機能には、タイプパラメーターのタイプデフォルト値のサポート、新しいタイプ削減アノテーション( typing.TypeIs
)、およびタイプシステムで非推奨マークのコメントが含まれます。
これらの改善により、タイププロンプト機能が強化され、Pythonがタイプチェックのためにより強力になり、コードの明確さが向上します。
例:
Import Typevarの入力からリスト t = typevar( 't'、bound = int) def sum_numbers(numbers:list [t]) - > t: return sum(数) print(sum_numbers([1、2、3]))
出力:
<code>6</code>
標準ライブラリを合理化するように設計されたPEP 594によると、Python 3.13.0は多くの非推奨モジュールを削除します。たとえば、 aifc
、 cgi
およびtelnetlib
モジュールが削除されました。
このクリーンアップは、標準的なライブラリの冗長性を軽減し、開発者がより近代的で効率的な代替品を使用することを奨励します。
!python -version
!sudo apt -get update -y !sudo apt-getインストールpython3.13
!sudo update-alternatives - install/usr/bin/python3 python3/usr/bin/python3.12 1 !sudo update-alternatives - install/usr/bin/python3 python3/usr/bin/python3.13 2
!python -version
特性 | Python 3.12.0 | Python 3.13.0 |
---|---|---|
インタラクティブな通訳 | 標準通訳 | マルチラインの編集とカラーサポートの強化されたサポート |
ギル処理 | 標準ギル | 実験的なグローバルインタープリターフリーロックビルディングモード |
パフォーマンス | さまざまな最適化を通じて、全体的な増加は5%です | パフォーマンスを改善するために予備JITを紹介します |
メモリ管理 | 標準的なメモリ管理 | メモリ使用量を削減するためのオプションのMimallocが含まれています |
エラーレポート | 強化されたエラーメッセージ | 例外バックトラッキングをさらに改善します |
dbm モジュール |
標準dbm 関数 |
デフォルトでdbm.sqlite3 バックエンドを使用します |
macOSサポート | MacOS 10.9以降をサポートします | MACOS 10.13への最小サポートバージョンアップデート |
プラットフォームサポート | 標準のプラットフォームサポート | WASIはレベル2です。Androidはレベル3です |
タイプ | タイプアノテーション用の新しい構文 | 新しいタイプのデフォルト、マイニフィスコメント、および非推奨 |
Python 3.13.0はPython 3.12.0で改善されており、多くの改善と新機能をもたらし、使用が容易になり、パフォーマンスの向上と開発者エクスペリエンスの向上を実現しています。重要な更新には、より良いインタラクティブな通訳者、新しいスレッドオプション、および早期JITコンピレーションが含まれます。これらの変更は、Pythonがプログラミングが進化するにつれて実用的であり続けることを意図していることを示唆しています。
以上がPython 3.13.0のすべて-Analytics Vidhyaの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。