[Tutor] escape codes and filenames
Mallett, Roger
rmallett@rational.com
Sat, 25 Nov 2000 12:37:13 -0800
Steve, Richard,
Steve asked: "How did you get filelist?"
My code is below. The file being read by the code below is a text file
loaded with fully qualified filenames obtained from a DOS dir /s/b command.
I use readlines() to put each line in the text file into a list and then
return the list.
-----------
CODE HERE
-----------
def ReadLinesFromFileIntoList(filename):
filez=open(filename,'r')
lines=filez.readlines()
return lines
SAMPLE ENTRIES from the text file are in the following format:
C:\__test\dir1\xray.htm
C:\__test\dir1\1234.htm
C:\__test\dir2\fred.htm
C:\__test\dir2\apex_declaration_class.htm
...
...
I don't understand how raw_input is applied in the situation I am trying
above. I would like to know more about it.
Using Richard's suggestion of "/" rather than "\" sounds interesting.
However, I still have to process each element in the list before opening any
of the files to ensure that it is scrubbed of escape codes.
Roger Mallett
-----Original Message-----
From: Steve Spicklemire [mailto:steve@spvi.com]
Sent: Saturday, November 25, 2000 12:02 PM
To: rmallett@Rational.Com
Cc: tutor@python.org; steve@spvi.com
Subject: Re: [Tutor] escape codes and filenames
Hi Roger,
How did you get filelist? If you type a string into the
interpreter and you want an explicit '\' you need to escape it
thusly:
filename = "c:\\trash.txt"
If you read a string from a file or keyboard, no escape is required
try the following code:
x = raw_input('enter a string with a "\\" in it... ')
print `x`
does that work for you?
-steve
>>>>> "Mallett," == Mallett, Roger <rmallett@rational.com> writes:
Mallett,> I have a series of files that need to be opened.
Mallett,> Several of the files start with characters normally
Mallett,> reserved as Escape codes.
Mallett,> Using for filename in filelist: x=open(filename,'r')
Mallett,> fails anytime anypart of *filename* contains a
Mallett,> "\<escape_code>" sequence. For example: if filename is
Mallett,> set to "c:\trash.txt", then the file will not open with
Mallett,> the open command above because the "\t" is perceived as
Mallett,> an escape code.
Mallett,> I have therefore written code to scrub each instance of
Mallett,> filename to ensure no escape sequences exist before the
Mallett,> open command is executed.
Mallett,> Is there another way to handle this? I found
Mallett,> information about *raw* commands in the python
Mallett,> documentation but couldn't figure out how to work it.
Mallett,> Any ideas of how this type of situation should be
Mallett,> handled?
Mallett,> Thank you for your help,
Mallett,> Roger Mallett
Mallett,> _______________________________________________ Tutor
Mallett,> maillist - Tutor@python.org
Mallett,> http://www.python.org/mailman/listinfo/tutor