On Tue, Aug 1, 2017 at 9:54 AM, Thomas Güttler <guettl...@thomas-guettler.de> wrote: > I have a friend who is a talented shell script writer. He is a linux guru > since > several years. > > He asked me if "if __name__=='main':" is state of the art if you want > to translate a shell script to python. > > I started to stutter and did not know how to reply.
The ~~correct~~ pedantic answer is "No, it's `if __name__ == '__main__':`" :) > I use Python since several years and I use console_script in entry_points of > setup.py. > > I am very unsure if this is the right way if you want to teach a new comers > the joy of python. > > In the current context we want to translate a bunch of shell scripts to > python scripts. > > What do you think? It depends on whether you're packaging them up as real Python packages (sdist, wheel, etc.) to be installed in site-packages or similar, or if they're just going to be standalone scripts (single file with a shebang, possibly not even a `.py` extension). If the former, go for the entry points. If the latter, go for `if __name__ == '__main__':`. And there's no real reason not to do both in the former case anyway; it's very convenient to not have to install your script somehow to be able to run it. -- Zach _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor