Couting the number of lines of code of a python program

Chris Angelico rosuav at
Sat Jan 5 15:09:08 CET 2013

On Sun, Jan 6, 2013 at 12:55 AM, chaouche yacine
<yacinechaouche at> wrote:
> The
>  problem is that I'm using the inspect module, because it provides a
> nice function inspect.getsourcelines that takes a python object and
> return its number of lines of code. BUT, it works on live objects, that
> means one has to first import the module he wants to process, and this
> can have side effects (example : GUI programs).

If you're using this entirely on your own code, one good way to solve
the problem is to make your code always importable. Protect your
top-level code with "if __name__=='__main__':" (and possibly put it
into a function main() if that simplifies your code counting), and you
should then be able to import it as-is, and all you'll do is define a
bunch of functions/classes.

But counting lines of code is a hairy thing to do. Do blank lines,
comments, and multi-line strings count?


More information about the Python-list mailing list