Como criar um arquivo de um diretório para cima?
Pergunta
Como posso criar um arquivo em python uma pasta acima, sem usar o caminho completo?
Gostaria uma maneira que trabalhou tanto para Windows e Linux.
Graças.
Solução
Use os.pardir
(que é provavelmente sempre ".."
)
import os
fobj = open(os.path.join(os.pardir, "filename"), "w")
Outras dicas
As pessoas parecem não perceber isso, mas Python é feliz em aceitar de barra mesmo no Windows. Esta multa funciona em todas as plataformas:
fobj = open("../filename", "w")
Depende se você está trabalhando em um ambiente UNIX ou Windows.
No Windows:
..\foo.txt
No Unix como sistema operacional:
../foo.txt
que você precisa para garantir que o sistema operacional define o caminho atual corretamente quando seu aplicativo é iniciado. Tome o caminho apropriado e simplesmente criar um arquivo lá.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow