5 ms·
1) One of pythons design philosophies is "explicit is better than implicit". 2) This is not a hurdle to hello world. print("Hello World") is a complete
by gizmo686 6y ago
1) One of pythons design philosophies is "explicit is better than implicit".
2) This is not a hurdle to hello world.
print("Hello World")
is a complete program that does exactly what you want. Needing to wrap it in a function would be an additional hurdle.
For complex programs; that is a hurdle well worth jumping. But for simple scripts (python is a scripting language), or teaching purposes, it is not always needed.
- kzrdude 6y agoAd 1, the current idiom uses dunder name, which is implicitly defined and looks special. Making main special would be about the same level of a solution, yet more conventional
- jimbob45 6y agoI understand that what you have is a complete program but every new Pythonist is going to next read the documentation that says, “Having a main method is a really good idea” and go try to implement one. Sure, in 1% of cases, you’ll need the granular control over how main is called but since when do languages cater to the 1%?
- mcintyre1994 6y agoCan't you just put code in `def main` and then have `main()` at the top-level if you don't need to worry about imports? It seems like you can probably get pretty far as a beginner before you need to worry about being able to both import and run the same file.