On 01/10/2016 12:29 AM, Arshpreet Singh wrote: > Hello Friends, I am quite new to OOP(object oriented Programming), I > did some projects with python which includes Data-Analysis, Flask Web > Development and some simple scripts. > > I have only one question which is bothering me most of the time, When > I will get the need to use Classes in Python? Or in other way is > there any real-life example where you can tell me this > problem/solution is kind of impossible in Python without Classes?
I can't speak to Flask or any other web development. But for simple scripts, I'll start out with no classes. Just functions as needed, and some main logic. I always use the idiom: if __name__ == '__main__': # do main logic here This way I can import functions defined in this script into another script later if I want. If I find I need to share state between functions, and if I find that I might need to have multiple situations of shared state possibly at the same time, then I will refactor the script into a class. Despite the apparent shame of using global variables, if I need to share state between functions, but I cannot ever foresee a time when I'll need to have multiple instances of that state, then I'll just use a module-level global variable and continue to use normal functions, rather than define a class. In the parlance of OOP, this use case would be referred to as a "singleton" and a python module (a script) is a form of singleton already, even without using classes. In the end my code often is a mix of classes and non-class -based code. -- https://mail.python.org/mailman/listinfo/python-list