faqts : Computers : Programming : Languages : Python : Common Problems : Files

+ Search
Add Entry AlertManage Folder Edit Entry Add page to http://del.icio.us/
Did You Find This Entry Useful?

62 of 66 people (94%) answered Yes
Recently 9 of 10 people (90%) answered Yes

Entry

How can I get the size of a file in python?

Sep 13th, 2000 07:20
unknown unknown, Steve Holden, Robert W. Bill


Problem:
i've done:
        self.logfile = open(filename, 'a')
and i'd like to do this next:
        len_log = self.logfile.size()
...is there something comparable?
Solution:
Indeed there is.  You can do:
        import os
        len_log = os.stat(filename)[6]
This functionality is available on both UNIX and Windows.  To be more
nicely symbolic you could extend the example to:
        import os
        from stat import *
        len_log = os.stat(filename)[ST_SIZE]
which makes it a bit more obvious what's going on.
--------------
However, because you are opening self.logfile for appending,
you can use:
        self.logfile = open(filename, "a")
        len_log = self.logfile.tell()