Course Outline
Introduction
- Python’s versatility: ranging from data analysis to web crawling
Python Data Structures and Operations
- Integers and floating-point numbers
- Strings and byte sequences
- Tuples and lists
- Dictionaries and ordered dictionaries
- Sets and frozen sets
- Data frames (pandas)
- Type conversions
Object-Oriented Programming in Python
- Inheritance
- Polymorphism
- Static classes
- Static functions
- Decorators
- Additional concepts
Data Analysis with Pandas
- Data cleaning techniques
- Utilising vectorised data within pandas
- Data wrangling processes
- Sorting and filtering data sets
- Aggregate operations
- Time series analysis
Data Visualisation
- Generating plots with matplotlib
- Integrating matplotlib with pandas
- Creating high-quality diagrams
- Visualising data within Jupyter notebooks
- Exploring other Python visualisation libraries
Vectorising Data with NumPy
- Creating NumPy arrays
- Common matrix operations
- Utilising ufuncs
- Views and broadcasting in NumPy arrays
- Performance optimisation through loop avoidance
- Performance tuning using cProfile
Big Data Processing in Python
- Development and support of distributed applications using Python
- Data storage: Utilising SQL and NoSQL databases
- Distributed processing via Hadoop and Spark
- Application scaling strategies
Extending Python with Other Languages (and vice versa)
- C#
- Java
- C++
- Perl
- Other languages
Python Multi-Threaded Programming
- Module management
- Synchronisation mechanisms
- Prioritisation strategies
Data Serialisation
- Serialising Python objects using Pickle
UI Development in Python
- Framework options for building GUIs in Python
- Tkinter
- Pyqt
Python for Maintenance Scripting
- Correctly raising and catching exceptions
- Structuring code into modules and packages
- Understanding and accessing symbol tables
- Selecting testing frameworks and applying TDD in Python
Python for Web Development
- Packages for web data processing
- Web crawling techniques
- Parsing HTML and XML
- Automating web form submission
Summary and Next Steps
Requirements
- Beginner to intermediate programming experience
- Foundational knowledge of mathematics and statistics
- Understanding of database concepts
Target Audience
- Developers
Testimonials (7)
Got to know a lot of new thngs.
Roland - Diehl Aviation
Course - Advanced Python - 4 Days
We covered the topics in sufficient depth, which gave us time to discuss many of them. It was comprehensive enough.
Gergo - Diehl Aviation
Course - Advanced Python - 4 Days
We got a lot of new informations about Python what we will be able to use in our daily work in the future. The exercises were really interesting and challenging enough.
Zsolt - Diehl Aviation
Course - Advanced Python - 4 Days
training was good overall, my favorite part: dashboard & pyqt
Balazs - Diehl Aviation
Course - Advanced Python - 4 Days
Plenty of examples - and the trainer willing to bend backwards to help us with topics we were weaker in.
Wei Lit Teoh - HP Singapore (Private) Ltd.
Course - Advanced Python - 4 Days
Lots of exercises
Fanny Stauffer - UCB Pharma S.A.
Course - Advanced Python - 4 Days
The trainer gave a clear and systematic teaching. He usually gave the reasoning and fundamental knowledge behind the commands. He also gave us time to do the exercises and practice.