Se você já sabe que o separador de caminho é /
(ou seja, você está escrevendo para uma plataforma / ambiente específico), como está implícito no exemplo da sua pergunta, você pode mantê-lo simples e dividir a string pelo separador:
'/foo/bar/baz/asdf/quux.html'.split('/').pop()
Isso seria mais rápido (e limpo) do que substituir pela expressão regular.
Novamente: Faça isso apenas se estiver escrevendo para um ambiente específico; caso contrário, use o path
módulo, pois os caminhos são surpreendentemente complexos. O Windows, por exemplo, suporta /
em muitos casos, mas não, por exemplo, os \\?\?
prefixos de estilo usados para pastas de rede compartilhadas e similares. No Windows, o método acima está fadado ao fracasso, mais cedo ou mais tarde.
path.basename(fpath, path.extname(fpath))