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.

Foi útil?

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
scroll top