Advanced Python Training – 3 Days
Course Description – Advanced Python Training
The Python language has been emerging as a very powerful, flexible, but easy to use programming tool for building all manner of applications. If you have learned the basics of the language, then this course can raise your skills to a higher level.
What You Will Learn
- Advanced functionality such as OO Python, data persistence
- Unit testing, debugging, and multi-threaded parallel code in Python
Prerequisites and Audience
Students should have a working knowledge of Python or have taken the Basic Python (3-day) class. Developers who need to be proficient with the Python language and its full set of features.
Custom Delivery
There are a lot of Python topics that are a logical follow-on to the Introduction to Python course, but most teams are only interested in a sub-set of those topics. The 2-day Advanced Python class is built in a modular fashion to allow teams to tailor each class for the audience. Below is a list of the most common advanced topics – the entire agenda can be tailored if needed. The number of topics that can be fit into one day depends on the depth of coverage requested. If you don’t see a topic listed that you are interested in please let us know!
Outline
Day 1: Most commonly requested Advanced Topics
Functions
- Functions
- Varargs with * and **
- Defining vararg functions
- Expanding sequences
- Lambda functions
- Embedding tests with __main__
Classes and Object-oriented Programming
- Defining and using Classes and Objects
- Using the self reference
- No privacy in Python
- Constructors and Destructors
- Simulating privacy in classes
- Class data
- Class Methods
- Converting your object to a string
- Inheritance
- Overriding methods
- Under the Object-oriented hood
- Overloaded operators
- Attribute access
- Properties
- Alternative control with __slots__
Day 2:Additional topics(choose a subset)
Day 2: Persistence
- Persistence options
- The marshal module
- The pickle module
JSON and Python - Accessing a database
- SQL Injection
- Parameterized Statements
GUIs with Tkinter
- The Tkinter module
- Hello World with Tkinter
- Modifying a larger application
Calling C code
- How to call C code
- The Swig tool
Threads in Python
- Creating Threads
- Synchronization
- Sharing Data Between Threads
Day 3:Additional topics
XML Processing
- Reading and parsing XML files
- Writing XML files
- Using XPath
- Modifying XML
Sockets and Networking
- Creating a socket server
- Creating a client server
- Accessing web pages
Numerical Processing
- The NumPy module
- Using NumPy
- Array slicing in NumPy
- Using NumPy Functions
- Array Features
Pandas
- About pandas
- Pandas architecture
- DataFrames
- Data Alignment
- Index Objects
- Basic indexing
- Broadcasting
- Removing entries
- Time Series
- Reading Data
Matplotlib
- About matplotlib
- Matplotlib architecture
- Matplotlib terminology
- Matplotlib keeps state
- What else can you do?
Other courses to explore:
Overview of Java EE Development – Onsite, Custom, Lowest Price
XML and Web Services Training – Onsite, Custom, Lowest Price
