aditya shukla wrote:
Guys thanks for your previous help .I have a doubt again

My text file is :-

0\9\10\11|0.50|c:\windows\apppatch/AcLayers.dll
...

now this is what happens

 >>> x=open("c:\\test2.txt","rb")
 >>> x.readline()

'\n' ---? i am not able to understand why is new line character returned here

Either because your text file starts with a blank line or because .readline does not work when you open in binary mode. In any case, you should probably change 'rb' to 'r'.


 >>> l =x.readline()
 >>> print l


Also , because of this i am not able to extract the floating point values ie 0.50,0.50,0.66 respectively
cause when i use the proposed solution given earlier

data=[]
for line in x:
   line=line.split("|")
data.append(float(line[-2])) --> i am trying to get the floating point values from the back i receive this error message

Traceback (most recent call last):
  File "<pyshell#71>", line 3, in <module>
    d.append(float(line[-2]))
IndexError: list index out of range

If you have a blank line, splitting returns a list of length 0 or 1, so there is no -2 element. Add something like
  if len(line) < 2: raise SomeError(message)
after the split. If you should always have 3 parts, check '==3' and index to line[1].

tjr

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to