Es gibt keinen direkt, aber Sie können eine Kombination aus tempfile
und shutil.copy2
verwenden, um dasselbe Ergebnis zu erzielen:
Sie müssen jedoch die temporäre Datei im Aufrufer entfernen.
Eine Variante der Antwort von @tramdas, die berücksichtigt, dass die Datei nicht zweimal unter Windows geöffnet werden kann. Diese Version ignoriert die Erhaltung der Dateiendung.
%Vor%Das ist nicht ganz so prägnant, und ich stelle mir vor, dass es Probleme mit der Ausnahmesicherheit geben könnte (zB was passiert, wenn 'Originalpfad' nicht existiert oder das temporary_copy-Objekt den Bereich verlässt, während die Datei geöffnet ist) aber dieser Code fügt ein wenig RAII zum Aufräumen hinzu. Der Unterschied zur direkten Verwendung von NamedTemporaryFile besteht darin, dass Sie nicht mit einem Dateiobjekt enden, sondern mit einer Datei, die gelegentlich erwünscht ist (z. B. wenn Sie einen anderen Code zum Lesen aufrufen möchten oder ähnliches) / p> %Vor%
in Ihrem Code würden Sie schreiben:
%Vor%Tags und Links python