Advanced Python 3 (4 Day Course) Training in Waterloo

Enroll in or hire us to teach our Advanced Python 3 (4 Day Course) class in Waterloo, Iowa by calling us @303.377.6176. Like all HSG classes, Advanced Python 3 (4 Day Course) may be offered either onsite or via instructor led virtual training. Consider looking at our public training schedule to see if it is scheduled: Public Training Classes
Provided there are enough attendees, Advanced Python 3 (4 Day Course) may be taught at one of our local training facilities.
We offer private customized training for groups of 3 or more attendees.

Course Description

 
In this Python training course, students already familiar with Python programming will learn advanced Python techniques such as IPython Notebook, the Collections module, mapping and filtering, lamba functions, advanced sorting, writing object-oriented code, testing and debugging, NumPy, pandas, matplotlib, regular expressions, Unicode, text encoding and working with databases, CSV files, JSON and XML. This advanced Python course is taught using Python 3, however, differences between Python 2 and Python 3 are noted.
Course Length: 4 Days
Course Tuition: $1290 (US)

Prerequisites

Basic Python programming experience. In particular, you should be very comfortable with: working with strings; working with lists, tuples and dictionaries; loops and conditionals; and writing your own functions. Experience in the following areas would be beneficial: some exposure to HTML, XML, JSON, and SQL.

Course Outline

 
IPython Notebook
Getting Started with IPython Notebook
Creating Your First IPython Notebook
IPython Notebook Modes
Useful Shortcut Keys
Markdown
Magic Commands
Getting Help
 
Advanced Python Concepts
Advanced List Comprehensions
Collections Module
Mapping and Filtering
Lambda Functions
Advanced Sorting
Unpacking Sequences in Function Calls
Modules and Packages
 
Working with Data
Databases
CSV
Getting Data from the Web
HTML
XML
JSON
 
Classes and Objects
Creating Classes
Attributes, Methods and Properties
Extending Classes
Documenting Classes
Static, Class, Abstract Methods
Decorator
 
Testing and Debugging
Creating Simulations
Testing for Performance
The unittest Module
 
NumPy
One-dimensional Arrays
Multi-dimensional Arrays
Getting Basic Information about an Array
NumPy Arrays Compared to Python Lists
Universal Functions
Modifying Parts of an Array
Adding a Row Vector to All Rows
Random Sampling
 
pandas
Series and DataFrames
Accessing Elements from a Series
Series Alignment
Comparing One Series with Another
Element-wise Operations
Creating a DataFrame from NumPy Array
Creating a DataFrame from Series
Creating a DataFrame from a CSVl
Getting Columns and Rows
Cleaning Data
Advanced Python
Combining Row and Column Selection
Scalar Data: at[] and iat[]
Boolean Selection
Plotting with matplotlib
 
Regular Expressions
Regular Expression Syntax
Python's Handling of Regular Expressions
 
Unicode and Encoding
Encoding and Decoding Files in Python
Converting a File from cp1252 to UTF-8

Python Programming Uses & Stats

Python Programming is Used For:
Web Development Video Games Desktop GUI's Software Development
Difficulty
Popularity
Year Created
1991
Pros
Easy to Learn:
The learning curve is very mild and the language is versatile and fast to develop.
 
Massive Libraries:
You can find a library for basically anything: from web development, through game development, to machine learning.
 
Do More with Less Code:
You can build prototypes and test out  ideas much quicker in Python than in other language
Cons

Speed Limitations:

It is an interpretive language and therefore much slower than compiled languages.

Problems with Threading:

Multi-threaded CPU-bound programs may be slower than single-threaded ones do to the Global Interpreter Lock (GIL) that allows only one thread to execute at a time.

Weak on Mobile:

Although, there are a number or libraries that provide a way to develop for both Android and iOS using Python currently Android and iOS don’t support Python as an official programming language.

Python Programming Job Market
Average Salary
$107,000
Job Count
26,856
Top Job Locations

New York City

Mountain View

San Francisco

Complimentary Skills to have along with Python Programming
The potential for career growth, whether you are new to the industry or plan to expand your current skills, depends upon your interests:
  - For knowledge in building in PC or windows, phone apps or you are looking your future in Microsoft learn C#
  - For android apps and also cross platform apps then learn Java
  - If you are an Apple-holic and want to build iOS and MAC apps and then choose Objective C or Swift
  - Interested in game development? C++
  - Data mining or statistics then go with R programming or MATLAB
  - Building an operating systems? C

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.