<p>Should I start a Python program with:</p>

<pre><code>if__name__ == '__main__':
some code...
</code></pre>

<p>And if so, why? I saw it many times but don't have a clue about it.</p>

If your program is usable as a library but you also have a main program (e.g. to test the library), that construct lets others import the file as a library and not run your main program. If your program is named foo.py and you do "import foo" from another python file,
```
__name__
```
evaluates to
```
'foo'
```
, but if you run "python foo.py" from the command line,
```
__name__
```
evaluates to
```
'__main__'
```
.
Note that you do need to insert a space between if and _, and indent the main program:
```
```
if __name__ == '__main__':
    main program here
```
```