これは提起された質問に実際には答えません。コメントするには少し長すぎます。
ソースをざっと調べてみると、PyPyには2つの実装がありますsplit()
。この高レベルで読み取り可能なバージョンと、rpython自体の実装のように見えるこの低レベルバージョンです。split()
これらの実装はどちらもCPythonのメソッドと同等ではありません(最も明らかに、 CPythonが提供されてsplit()
いない特別な場合を処理しません)。ただし、詳細ではなく、使用される基本的なアルゴリズムにのみ関心がある場合は、PyPyの実装がガイドになる可能性があります(一見すると、CPythonとJythonの両方と基本的に同じことをしているように見えます)。sep
ただし、一般的なリソースとして、PyPyのすべての文字列関数の実装がCPythonで使用されるアルゴリズムを反映していると考える理由はありません-結局のところ、PyPyはJITで実行されるPythonの最適化されたバージョンとして意図されています。メソッドの最も合理的な実装が何であるかに大きな影響を与えます(特に文字列関数は、パフォーマンスのボトルネックになることが多く、したがって「最適化された」ランタイムの実装者は最適化するインセンティブを持っています)。
より一般的な質問について考えると、CPython開発者がCですでに維持されている低レベルライブラリの純粋なPython実装の個別のセットを維持するインセンティブはほとんどありません。ミラー実装が古くなるリスクが非常に高いようです。または実際に行われていることに対して不正確であり、Cコードを読まずにPythonの内部動作を理解しようとした人々にとって最終的には有害である可能性があります。