¿Cómo puedo crear un archivo en python uno arriba, sin usar la ruta completa?¿Cómo crear un directorio de archivos uno arriba?
Me gustaría una forma que funcionara tanto para Windows como para Linux.
Gracias.
¿Cómo puedo crear un archivo en python uno arriba, sin usar la ruta completa?¿Cómo crear un directorio de archivos uno arriba?
Me gustaría una forma que funcionara tanto para Windows como para Linux.
Gracias.
Uso os.pardir
(que probablemente es siempre ".."
)
import os
fobj = open(os.path.join(os.pardir, "filename"), "w")
depende de si se está trabajando en un entorno UNIX o Windows.
en Windows:
..\foo.txt
en UNIX como sistema operativo:
../foo.txt
que necesita para asegurarse de que el sistema operativo establece la ruta actual correctamente cuando su aplicación se inicia. Tome la ruta adecuada y simplemente cree un archivo allí.
use os.path.join o os.sep –
Python también comprenderá la barra diagonal en Windows. – mob
No soy un tipo pitón :-) –
Parece que las personas no se dan cuenta de esto, pero Python está feliz de aceptar la barra inclinada incluso en Windows. Esto funciona bien en todas las plataformas:
fobj = open("../filename", "w")
¿Es esta una función oficial? No recuerdo haberlo visto en la documentación, y os.path.join siempre me hizo pensar que los programadores no deberían confiar en que '/' sea el separador de ruta ... – EOL
¿funcionará eso para Windows y Linux? – nunos
usando os.pardir tomará la sintaxis del directorio principal relevante para el sistema operativo en el que se está ejecutando actualmente su aplicación. Entonces sí, funcionará tanto en Windows como en Linux. –
Gracias. ¡Eso fue rápido! – nunos