Como saber o caminho do script em execução no Python?

Meu script.py cria um arquivo temporário no mesmo diretório que o script.

Ao executá-lo:

python script.py

funciona apenas arquivar

mas não funciona quando você executa:

python /path/to/script.py

Isso porque estou usando um caminho relativo para o meu arquivo temporário no script.py, em vez de um caminho absoluto. O problema é que não sei em que caminho ele estará rodando, então preciso de uma maneira de saber isso dinamicamente.

Sobre?

os.path.abspath(os.path.dirname(__file__))

questionAnswers(3)

yourAnswerToTheQuestion