Reemplazo de archivos atómicos en Python

¿Cuál es la forma recomendada de reemplazar un archivo atómicamente en Python?

es decir, si se interrumpe la secuencia de comandos de Python, hay un corte de energía, etc. Los archivos no tienen una alta probabilidad de terminar en un estado incoherente (la mitad escrita en el disco).

Se prefiere una solución para plataformas Linux / UNIX.

(Sé que obtener operaciones atómicas al 100% podría depender de su sistema de archivos, pero al menos reducir las posibilidades de corrupción)

Cree un nuevo archivo y os.rename () sobre el archivo existente. Esto es atómico en la mayoría de las plataformas en la mayoría de las condiciones .