My machine is marginally faster for that; I get about 17ms doing that with python, without the print:
time echo "exit()" | python3
real 0m0.017s
user 0m0.014s
sys 0m0.003s
That's... still pretty slow. Here's a C program, run 100 times:
range=`seq 100`
time for i in $range; do ./a.out; done
real 0m0.038s
user 0m0.024s
sys 0m0.016s
And finally, for comparison on Plan 9:
range=`{seq 2000}
time rc -c 'for(s in $range){ ./6.nop }'
0.01u 0.09s 0.16r rc -c for(s in $range){ ./6.nop }
the C program used was simply:
int main(void) { return 0; }
Of course, the more real work you do in the program, the less it matters -- but there's a hell of a lot you can do in the time it takes Python to launch.