[Tutor] Python Fails to Change Directory
steve at pearwood.info
Sun Apr 15 07:32:29 CEST 2012
Andrew Jahn wrote:
> Hi all,
> I am attempting to use a Python program to change into a specified
> directory before executing some commands. However, when I call the Python
> program from my Unix shell (tcsh) using a command such as
> "python myprogram.py"
> It runs without changing directory. Just to clarify, the lines of code in
> question are the following:
> import os
> MyDir = "/usr/local/myDir"
> os.system("cd "+myDir)
That's not the code you are running, because it gives a NameError. Please copy
and paste any code snippets you give, don't retype them (especially not from
memory!) since you will likely introduce errors. The above error is trivial to
fix, but who knows what other errors you have introduced?
In any case, os.system can't help you, because that starts a new external
process, it doesn't change the directory of the current process (your Python
> I have also tried "os.chdir(MyDir)", but that doesn't work either - it just
> runs without actually changing directory.
I find that very hard to believe. Can you explain why you think it doesn't
change directory? Try this:
What does it print?
More information about the Tutor