This two day course is designed for developers who already know the fundamentals of Python. This course will get more "under the hood" and introduce the students to powerful tools and techniques that go beyond the basics.
There are a lot of intermediate topics in Python, and this course can be customized based on need. The class will focus on Python 3 unless Python 2 is specifically requested.
• We start immediately with working programs.
• Testing is integral to our approach.
• Taught on Windows, Linux or Mac OS X.
• Knowledge level of Python for Programmers course is assumed
• Function and class decorators
• Creating context managers
• Packaging and distribution of Python packages
• Callable objects, lambdas, and extended argument syntax
• Properties, class methods, and static methods
• String representations of objects
• Specialized numeric and scalar types
• Functional-style programming tools
• The iteration and iterable protocols
• Multiple inheritance, method resolution order, and super()
• Collection protocols and implementing collections
• Advanced error handling with exceptions
This workshop requires that you bring a laptop with the following software installed:
• Python 3.3 or greater installed. Python 3.5.1 would be ideal. https://www.python.org/downloads/
• An editor for Python code. Attendees can use whatever editor they prefer, but we recommend PyCharm which is a full-featured Python IDE : https://www.jetbrains.com/pycharm/
• The ability to either connect to the Internet or accept USB flash drives so we can distribute course materials on the day.