Не думаю, что в os
есть что-то, что делает это:
from os import chdir, getcwd
_stack = []
def pushd(dir):
global _stack
_stack.append(getcwd())
chdir(dir)
def popd():
chdir(_stack.pop())
Учитывая контекст, я бы предпочел ваш пример with Path(dir):
во многих ситуациях. Вы, вероятно, пытаетесь уйти от bash, а не копировать его:)