Prendi in considerazione l'utilizzo di un percorso assoluto per l'esecuzione dei comandi.
Alcuni file binari non si trovano in PATH a seconda dell'utente, del sistema e dell'installazione del software.
Per scoprire dove sqlplus risiede, esegui quanto segue in cmd.exe :where sqlplus e questo dovrebbe darti il percorso assoluto.
Quindi fai semplicemente:
Popen(['C:/path/sqlplus.exe', '-S', ...])
Anche per scoprire cosa c'è effettivamente nel tuo PATH variabile di ambiente, è possibile eseguire le seguenti operazioni:
print(os.environ['PATH'])