Jeff Shannon said unto the world upon 2004-12-16 17:54:
Amir Dekel wrote:

2. os.path.expanduser("~") always gives me "C:\\" instead of my homepath. I have tried to change my homepath in WinXP using set homepath(in command line), and alsaw using the "Environment Variables" in WinXP system properties, non helped. I really have to fix this somehow.



Well, according to os.path.expanduser()'s docstring, it uses the $HOME environment variable to determine how to expand ~. I don't know what's standard on Windows, but I tried checking for a $HOME and found none. Here's (a slightly redacted copy of) what I *do* find (Win2K):

<SNIP>

Judging from this, I think that os.environ['USERPROFILE'] seems like it may do what you want, though os.environ['APPDATA'] might be useful as well. Of course, if you're trying to get something to work cross-platform, things may be more difficult -- but that's because Windows doesn't normally use ~ so its use is not supported very well. You may be able to create a $HOME that's equivalent to $USERPROFILE...

Jeff Shannon
Technician/Programmer
Credit International

Hi all,

some 'nix-world tool (probably xemacs) that I put on my WinMe box didn't like the lack of a HOME environment variable, either. This was easily solved by adding the line

SET HOME=D:\HOME

to my autoexec.bat file. (I don't know if this works in more recent versions of Windows, but I'd imagine so.) There to, I have added a line

SET PYTHONPATH=D:\List_Of_Dirs;D:\Use_a_semi_colon_to_sep_items_on_Win

Which puts those dirs into sys.path (at the front, I believe). I also used the .pth file trick because they two means differ as to where in the sys.path they add their entries.

Best to all,

Brian vdB

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to