Você pode tentar testar o resultado da execução de ASSOC .py antes de invocar o script:
ASSOC .py >nul && some_script.py
O comando ASSOC .py exibe o tipo de arquivo associado à extensão .py , se houver. Se não houver associação (o que deve ser verdade quando não houver Python instalado no sistema), o comando define a variável de sistema ERRORLEVEL .
Agora, o comando antes do delimitador do comando && será executado apenas se o comando anterior não tiver definido ERRORLEVEL . Portanto, se não houver associação de tipo de arquivo para .py no sistema, o script não será chamado. Você também receberá uma mensagem relevante de ASSOC na janela de comando. ( >nul suprime a saída 'normal', mas não suprime a mensagem No association .)