print "creating a text file"
text_file = open("write_it.txt", "a")
score = 5
name = raw_input("What's your name?: ")
score = (score, name)
text_file.write(score)
text_file.close()

getting TypeError: expected a character buffer object

Please help.
Thanks

Recommended Answers

All 5 Replies

You must give write string argument.

print "creating a text file"
# 'w' mode creates new file
with open("write_it.txt", "w") as text_file:
  score = 5
  name = raw_input("What's your name?: ")
  text_file.write("%s, %s" % (score, name))

Thanks alot pyTony.

You really helped me out.

By the way, I set the mode for "a" because I wanted to append the score, and as you know "a" also creates a new file.

But thanks alot for the help, now I can finish my whole program.

Just so you know it's considered polite to mark the thread as solved so people can use it for future reference, and I'm sure pyTony wouldn't mind an upvote for his help if you feel it's in order.

Thanks alot pyTony.

You really helped me out.

By the way, I set the mode for "a" because I wanted to append the score, and as you know "a" also creates a new file.

But thanks alot for the help, now I can finish my whole program.

Just consider that you will be allways addding to file in append mode, so you get 'log file' effect. You never clear it if it exists. Therefore it is more common to update file by reading it fully in, changing information in memory and again writing in 'w' mode to file.

commented: Very clear and understandable aid. +0

Alright, thanks again Pytony for the tip.

Pyguy62, I am new here, and didn't really take time to mark it as 'solved', because I was so amazed of how quickly I got an incredible helpful response after 20 min. I apologize if I made it look like I didn't appreciate the help, but know that I am deeply thankful.
I will mark this as 'solved' and of course upvote PyTony right now.

Thanks again, I will remember this next time!

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.