and its processing are associated with the class rather than its instances that isthe information is usually stored on the class itself and processed apart from any instance for such taskssimple functions coded outside class can often suffice--because they can access class attributes through the class namethey have access to class data and never require access to an instance howeverto better associate such code with classand to allow such processing to be customized with inheritance as usualit would be better to code these types of functions inside the class itself to make this workwe need methods in class that are not passedand do not expecta self instance argument python supports such goals with the notion of static methods--simple functions with no self argument that are nested in class and are designed to work on class attributes instead of instance attributes static methods never receive an automatic self argumentwhether called through class or an instance they usually keep track of information that spans all instancesrather than providing behavior for instances although less commonly usedpython also supports the notion of class methods-methods of class that are passed class object in their first argument instead of an instanceregardless of whether they are called through an instance or class such methods can access class data through their class argument--what we've called self thus far--even if called through an instance normal methodsnow known in formal circles as instance methodsstill receive subject instance when calledstatic and class methods do not static methods in and the concept of static methods is the same in both python and xbut its implementation requirements have evolved somewhat in python since this book covers both versionsi need to explain the differences in the two underlying models before we get to the code reallywe already began this story in the preceding when we explored the notion of unbound methods recall that both python and always pass an instance to method that is called through an instance howeverpython treats methods fetched directly from class differently than -- difference in python lines that has nothing to do with new-style classesboth python and produce bound method when method is fetched through an instance in python xfetching method from class produces an unbound methodwhich cannot be called without manually passing an instance in python xfetching method from class produces simple functionwhich can be called normally with no instance present static and class methods