Course Outline
Introduction
- Python versatility: from data analysis to web crawling
Python Data Structures and Operations
- Integers and floats
- Strings and bytes
- Tuples and lists
- Dictionaries and ordered dictionaries
- Sets and frozen sets
- Data frame (pandas)
- Conversions
Object-Oriented Programming with Python
- Inheritance
- Polymorphism
- Static classes
- Static functions
- Decorators
- Other
Data Analysis with Pandas
- Data cleaning
- Using vectorized data in pandas
- Data wrangling
- Sorting and filtering data
- Aggregate operations
- Analyzing time series
Data Visualization
- Plotting diagrams with matplotlib
- Using matplotlib from within pandas
- Creating quality diagrams
- Visualizing data in Jupyter notebooks
- Other visualization libraries in Python
Vectorizing Data in Numpy
- Creating Numpy arrays
- Common operations on matrices
- Using ufuncs
- Views and broadcasting on Numpy arrays
- Optimizing performance by avoiding loops
- Optimizing performance with cProfile
Processing Big Data with Python
- Building and supporting distributed applications with Python
- Data storage: Working with SQL and NoSQL databases
- Distributed processing with Hadoop and Spark
- Scaling your applications
Extending Python (and vice versa) with Other Languages
- C#
- Java
- C++
- Perl
- Others
Python Multi-Threaded Programming
- Modules
- Synchronizing
- Prioritizing
Data Serialization
- Python object serialization with Pickle
UI Programming with Python
- Framework options for building GUIs in Python
- Tkinter
- Pyqt
Python for Maintenance Scripting
- Raising and catching exceptions correctly
- Organizing code into modules and packages
- Understanding symbol tables and accessing them in code
- Picking a testing framework and applying TDD in Python
Python for the Web
- Packages for web processing
- Web crawling
- Parsing HTML and XML
- Filling web forms automatically
Summary and Conclusion
Requirements
- Beginner to intermediate programming experience.
- Knowledge of math and statistics.
- Knowledge of database concepts.
Audience
- Developers
Testimonials
The trainer was excellent, He was always ready to answer my questions and share as much knowledge as he could.
Fahad Malalla - Tatweer Petroleum
emphasis on examples with encoding "on the projector" is definitely on + for Tom.
- ADVA OPTICAL NETWORKING SP. ZO O.
pace and explanations
- Centric IT Solutions Lithuania
The flexibilty and clear information
WAFEYA AlMadhoob - Tatweer Petroleum
everything was OK
Atos Global Delivery Center Polska Sp. Z o.o. Sp. K.,
Flask, dataclasses
Atos Global Delivery Center Polska Sp. Z o.o. Sp. K.,
The training program was elastic - we told the trainer what topics are of most interest.
Mateusz Jaros - GE Medical Systems Polska Sp. z o.o.
presentation materials and flexibility for defining interesting topics by our group
Ievgen Vinchyk - GE Medical Systems Polska Sp. z o.o.
Konsultacja prowadzącego z uczestnikami na początku kursu i dostowanie go do rzeczywistych potrzeb.
GE Medical Systems Polska Sp. z o.o.
Mass of examples, trainer is python jedi
GE Medical Systems Polska Sp. z o.o.
discussion, knowledge sharing, samples