0
任意に大きいNに対しては、すべてのデータをメモリに連続してリストに格納することはできません。Pythonで不連続なリストがあるかどうかを知るには?
たとえば、Pythonで、arr = [0] * Nを実行すると、Nが十分に大きい場合、これは連続していることはありません。
このためにPythonは何をしていますか?私はそれが非連続的に格納されると仮定します。それはどのように機能するのですか?
任意に大きいNに対しては、すべてのデータをメモリに連続してリストに格納することはできません。Pythonで不連続なリストがあるかどうかを知るには?
たとえば、Pythonで、arr = [0] * Nを実行すると、Nが十分に大きい場合、これは連続していることはありません。
このためにPythonは何をしていますか?私はそれが非連続的に格納されると仮定します。それはどのように機能するのですか?
CPythonリストは、少なくとも仮想メモリ内では常に連続しています。 CPythonは、メモリ断片化やそれに類するものの中で、リストを非連続セグメントに分割しようとすることはありません。
自分で見たい場合は、Include/listobject.h
とObjects/listobject.c
をご覧ください。不連続なリストについては、そこには何もありません。