[Tutor] escape codes and filenames

Mallett, Roger rmallett@rational.com
Sat, 25 Nov 2000 13:25:39 -0800


Steve,

I get the same results you do.  I am obviously misinterpreting something.

The fragment below is exactly where things are breaking.  Since my last
response, I wrote code to replace backslashes with forward slashes so my
input is slightly different but it breaks in the same way at the same place.


I call the following function with a list of filenames:

def CheckFileForConditionalText(filename):
    print '\tCheckFileForConditionalText entered'   #for testing only
    print '\t\tfilename:  ',filename   #for testing only
    x=open('c:\\trash.txt','r')  #for testing only
    print '\ttrash opened'       #for testing only
    x=open(filename,'r')      #THINGS BREAK HERE, THE FILE DOESN'T OPEN




RESULTING PRINTOUTS FROM THE FUNCTION
-------------------------------------
CheckFileForConditionalText entered
filename:
C:/__HelpFiles/SoDA/teamtest/teamtest_verificationpoint_class.htm
trash opened



If I use similar commands at the interpreter, everything is fine
------------------
>>> a='c:/__helpfiles/soda/teamtest/teamtest_variant_class.htm'
>>> x=open(a,'r')
>>> z=x.readlines()
>>> z
['<HTML>\012', '<HEAD>\012', ' <TITLE>TeamTest Variant Class</TITLE>\012',
....... and so on



Why do things appear to work in the interpreter but don't work when executed
from the function?

Roger Mallett



-----Original Message-----
From: Steve Spicklemire [mailto:steve@spvi.com]
Sent: Saturday, November 25, 2000 1:12 PM
To: rmallett@Rational.Com
Cc: tutor@python.org; steve@spvi.com
Subject: Re: [Tutor] escape codes and filenames



Hi Roger,

   Hmm... something is really wierd!

I cooked up the following code:

----------------------------------------------------------------------

f = open('foo.txt')

lines = f.readlines()

for line in lines:
    print `line`

----------------------------------------------------------------------

I saved the following in foo.txt

C:\__test\dir1\xray.htm
C:\__test\dir1\1234.htm
C:\__test\dir2\fred.htm
C:\__test\dir2\apex_declaration_class.htm

When I run my code I get:

'C:\\__test\\dir1\\xray.htm\012'
'C:\\__test\\dir1\\1234.htm\012'
'C:\\__test\\dir2\\fred.htm\012'
'C:\\__test\\dir2\\apex_declaration_class.htm\012'

Which is exactly what I expect....  what do you get?

-steve

>>>>> "RM" == Mallett, Roger <rmallett@rational.com> writes:

    RM> Steve, Richard,

    RM> Steve asked: "How did you get filelist?"