Jules Stevenson wrote: > Hi, > > I have a list which contains a folder structure, for instance: > > dirs=['c:\', 'temp', 'foo', 'bar'] > Of course this should really be
dirs=['c:\\', 'temp', 'foo', 'bar'] but we'll overlook your little syntax error ;-) > The length of the list can vary. I'd like to be able to construct a > os.path.join on the list, but as the list can vary in length I'm unsure how > to do this neatly. I figured I could use a for loop and build the whole > statement as a string and 'eval it', but I'm aware that this is not a good > idea. > > It strikes me that there probably is a very elegant way to achieve what I > want to do, any pointers much appreciated. > Jules: Don't reply to someone else's post with a new question, please: many people use "threaded" readers, and will not even see your subject line. What you need is os.path.join(*dirs) which tells Python to take the list and turn it into separate arguments. Fortunately os.path.join will take as many arguments as you care to pass it: >>> os.path.join(*dirs) 'c:\\temp\\foo\\bar' >>> regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC http://www.holdenweb.com/ -- http://mail.python.org/mailman/listinfo/python-list