The system call creates a new process. If you do system("cd .., you are creating a new process that then changes its own current working directory and terminates. It would be quite surprising if a child process changing its current working directory magically changed its parent's current working directory. A system where that happened would be very hard to use.
os.system (which is just a thin wrapper around the POSIX system call) runs the command in a shell launched as a child of the current process. Running a cd in that shell only changes the current directory of that process, not the parent.
Asked in February 2016Viewed 1,915 timesVoted 8Answered 3 times