>> Does python provide any function that can remove the newline character >> from a string if it exists? > > >>> fileName = 'Perfect Setup.txt\n' > >>> fileName.strip() > 'Perfect Setup.txt' > >>> > > Or you can use lstrip() or rstrip() to remove just the left or right side.
Just a caveat with the non-qualified strip/rstrip/lstrip...it will remove *all* whitespace, so if, for some reason, it's significant, and you only want to remove newlines, you have to specify it: >>> s = ' some text \t\n' >>> s.strip() 'some text' >>> s.rstrip() ' some text' >>> s.rstrip('\n') ' some text \t' As the OP was talking about file-names, the use of initial/terminal spaces is allowable (albeit imprudent), depending on your platform, so one may or may not want to strip them off. Fortunately, as in many other areas, Python offers the flexibility in an easy-to-use way, and comes with sensible defaults. -tkc -- http://mail.python.org/mailman/listinfo/python-list