Hick
Hick

Reputation: 36374

error in writing data into file in python

 a='aa'
>>> f=open("key.txt","w")


>>> s=str(a)
>>> f.write(s)

and still the key.txt file remains blank .. why?

Upvotes: 2

Views: 2306

Answers (2)

unutbu
unutbu

Reputation: 879083

Use

f.flush()

to flush the write to disk. Or, if you are done using f, you could use

f.close()

to flush and close the file.

Upvotes: 10

Tendayi Mawushe
Tendayi Mawushe

Reputation: 26108

This issue can be avoided completely by making use of the with statement:

with open("key.txt","w") as f:
    s=str(a)
    f.write(s)

The file will be automatically closed when the block completes. Using the with statement you need not worry about this sort of bug creeping into your code.

Upvotes: 2

Related Questions