If you were to go into your terminal and type
/bin/python3
It would open the python interpreter. Likewise, going to /uploads/???.php would execute your shell. You are making calls to the file in both instances, just one is being done remotely.
Thats kind of a simple explaination, Taz eludes to reasons files will not execute but it gives you the gist of it.
Really what I am getting at is that a file can be called from a filepath if that is what you mean