David Heiser wrote: > > I have code that uses variables to hold escaped characters like "\n" or > "\03". As long as the assignment is done within the code, like > self.crChar = "\n", there is no problem. But When I try to read the > same character string from a text file and assign it, the string is seen > as just a string of characters instead of an escape sequence, and the > program fails. > > I read the "parameter = value" pairs, like "crChar = \n", from an ASCII > file and store them in a dictionary; "parameterDict[parameter] = value". > Then I assign the value to the variable using "self.crChar = > parameterDict["crChar"]. When I print "self.crChar", it displays "\\n > <file://\\n>" and it doesn't behave like a carriage return.
You can use the 'string_escape' codec to translate literal backslash escapes to the special characters the escapes represent: In [5]: s='this is not a newline\\n' In [6]: s.decode('string_escape') Out[6]: 'this is not a newline\n' In [7]: s Out[7]: 'this is not a newline\\n' See the difference? Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor