Help to convert Number to String

2010-08-13 Thread Vamsi
I am trying to count the number of lines in a file and insert  into
the file but getting the error message "TypeError: must be string or
read-only character buffer, not int", Could you please help me how to
correct this?


here is the code

lines1 = sum(1 for line in open('C:/test1.txt'))
wfile = open('C:/test1.txt'', 'a')
wfile.write(str(lines1).zfill(9))
wfile.close()

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


Re: Help to convert Number to String

2010-08-13 Thread Vamsi
On Aug 13, 7:27 pm, Stefan Schwarzer 
wrote:
> Hi Vamsi,
>
> On 2010-08-13 22:50, Vamsi wrote:
>
> > I am trying to count the number of lines in a file and insert  into
> > the file but getting the error message "TypeError: must be string or
> > read-only character buffer, not int", Could you please help me how to
> > correct this?
>
> Which Python version do you use?
>
> For which statement exactly do you get the message?
>
> > here is the code
>
> > lines1 = sum(1 for line in open('C:/test1.txt'))
> > wfile = open('C:/test1.txt'', 'a')
>
> You have two quotes here after the filename. These give a
> SyntaxError here. Python sees two concatenated strings,
> "C:/test1.txt" and ", " and stumbles over the a immediately
> after the closing quote of the second string.
>
> > wfile.write(str(lines1).zfill(9))
> > wfile.close()
>
> If I remove the redundant quote character and substitute
> filenames appropriate for my system, everything works.
>
> Maybe the code you included in this post isn't the same
> which led to the error?
>
> Stefan

Thank you Stefan,I pasted only part of the code.I am new to Python and
using 2.7.My actual code is as below, If I run the below code I am
getting the error "TypeError: 'str' object is not callable" ,Now I
found that I am using the "str" variable which is  a function.Thanks a
lot for your help.


fileopen = open('C:/MPython/test.txt', 'r')
str = fileopen.read()
print str
fileopen.close()
lines1 = sum(1 for line in open('C:/MPython/test.txt'))
wfile = open('C:/MPython/test.txt', 'a')
wfile.write("\n")
wfile.write(str(lines1).zfill(9))
wfile.close()

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


Re: Help to convert Number to String

2010-08-13 Thread Vamsi
On Aug 13, 9:06 pm, Steven D'Aprano  wrote:
> On Fri, 13 Aug 2010 13:50:48 -0700, Vamsi wrote:
> > I am trying to count the number of lines in a file and insert  into the
> > file but getting the error message "TypeError: must be string or
> > read-only character buffer, not int", Could you please help me how to
> > correct this?
>
> > here is the code
>
> > lines1 = sum(1 for line in open('C:/test1.txt'))
> > wfile = open('C:/test1.txt'', 'a')
> > wfile.write(str(lines1).zfill(9))
> > wfile.close()
>
> No, that ISN'T the code you are using.
>
> Don't re-type the code (introducing syntax errors), but copy and paste
> WORKING code. Also you need to copy and paste the EXACT error message you
> get, not just paraphrasing it.
>
> When I correct the obvious errors in your code above, it works for me:
>
>
>
> >>> f = open('test', 'w')
> >>> f.write('hello\nworld\n')
> 12
> >>> f.close()
> >>> lines1 = sum(1 for line in open('test'))
> >>> wfile = open('test', 'a')
> >>> wfile.write(str(lines1).zfill(9))
> 9
> >>> wfile.close()
>
> and the file is correctly updated:
>
> >>> open('test').read()
>
> 'hello\nworld\n2'
>
> --
> Steven

Thank you Steve for your response.
I pasted only part of the code.I am new to Python and
using 2.7.My actual code is as below, If I run the below code I am
getting the error "TypeError: 'str' object is not callable" ,Now I
found that I am using the "str" variable which is  a function.Thanks
a
lot for your help.
fileopen = open('C:/MPython/test.txt', 'r')
str = fileopen.read()
print str
fileopen.close()
lines1 = sum(1 for line in open('C:/MPython/test.txt'))
wfile = open('C:/MPython/test.txt', 'a')
wfile.write("\n")
wfile.write(str(lines1).zfill(9))
wfile.close()
-- 
http://mail.python.org/mailman/listinfo/python-list