Grundsätzlich möchte ich eine unendliche Größe (genauer gesagt, Festplatte statt Speicher gebunden) dict in einem Python-Programm, das ich schreibe. Es scheint, dass die Module tempfile und shelve dafür natürlich geeignet sind, aber ich kann nicht sehen, wie man sie sicher zusammen verwendet. Ich möchte die TTF-Datei gelöscht werden, wenn das Regal ist GCED (oder Garantie Löschen, nachdem das Regal ist außer Betrieb, unabhängig davon, wann), aber die einzige Lösung, die ich für diese finden kann, beinhaltet tempfile.TemporaryFile() zu öffnen ein Datei-Handle, der den Dateinamen vom Handle abruft, diesen Dateinamen zum Öffnen eines Shelves verwendet, den Verweis auf das Datei-Handle behält, um zu verhindern, dass GCed wird (und die Datei gelöscht wird), und dann einen Wrapper in das Shelve legt Referenz. Hat jemand eine bessere Lösung als dieses komplizierte Chaos?Gibt es eine einfache Möglichkeit, eine Python-Temporärdatei in einem Regal zu verwenden (und sicherzustellen, dass sie sich selbst säubert)?
Einschränkungen: Kann nur die Standard-Python-Bibliothek verwenden und muss vollständig plattformübergreifend sein.