Loading
  • Main Menu
GreaterHeight Technologies LLC ~ GreaterHeight Academy
  • All Courses
    • BI and Visualization
      • Mastering Data and Business Analytics
        • Basic Excel for Data Analysis
        • Intermediate and Advanced Excel for Data Analysis
        • Excel for Business Analysis & Analyst
        • PivotTable, PowerPivot, PowerQuery & DAX for Data Analysi
        • Data Analytics and Visualization with Tableau
        • Data Analytics with Power-BI
        • Data Analytics and Visualisation with SQL
      • Mastering Python for Data Analytics and Visualization
        • Python Foundation for Data Analytics
        • Data Analysis Using Python With Numpy and Pandas
        • Data Visualization Using Python with Matplotlib and Seaborn
        • Data Science with SQL Server and Azure SQL Database
        • Data Analytics and Visualisation with PowerBI
      • Complete Microsoft Excel Master Program
        • Basic Excel for Data Analysis
        • Excel Interactive Dashboard for Data Analysis
        • Intermediate and Advanced Excel for Data Analysis
        • PivotTable PowerPivot, PowerQuery & DAX for Data Analysis
        • Excel for Data Analysis and Visualization
        • Excel for Business Analysis & Analyst
      • Data Analytics With SQL Master Program
      • Master Data Analytics With PowerBI
      • Financial Reporting with PowerBI
      • Data Analysts with Power-BI
      • Data Analytics and Visualization with Excel
    • Mastering Python
      • Python Developer Masters Program
        • Python Programming Certification Course
        • Data Science With Python Certification
        • Artificial Intelligence Certification Course
        • PySpark Certification Training Course
        • Python Statistics for Data Science
      • The Complete Python Developer
      • Data Analysis and Visualization with Python
      • Complete Data Scientist with Python
      • Data Engineer with SQL and Python
      • Machine Learning Engineer with Python
    • Azure Cloud Computing
      • DevOps Engineer and Solutions Architect Master Program
      • Greaterheight Azure GH-602 Cloud Solution Architect Master
      • Greaterheight Azure GH-601 Cloud DevOps Master
      • Microsoft Azure az-900 Fundamentals
      • Microsoft Azure az-104 Administrator
      • Microsoft Azure az-204 Developer
      • Microsoft Azure az-305 Solutions Architect
      • Microsoft Azure az-400 DevOps Engineer
      • Microsoft Azure AI-900 Fundamentals
      • Microsoft Azure DP-100 Data Science
    • SQL and SQL-Server Database
      • Mastering SQL Server Development
      • Data Analytics With SQL Master Program
      • Data Engineer Course Online Masters Program
      • Data Science with SQL Server and Azure SQL Database
    • DevOps Development Program
      • DevOps Engineer & Solution Architect Expert Program
    • Data Science
      • Data Science With Python Certification
      • Pythom Statistics for Data Science
      • Data Science with SQL Server and Azure SQL Database
      • Complete Data Scientist with Python
  • Who We Serve
    • Individuals
    • Business
    • Universities
  • Partners
    • Employer Networks
    • Community Partnership
    • Opportunity Funds
    • Future Finance
    • Scholarships
  • Resources
    • Webinars
    • Blog
    • Tutorials
    • White Papers
    • Podcast
    • Events
  • Get Advice
GreaterHeight Technologies LLC ~ GreaterHeight Academy
  • All Courses
    • BI and Visualization
      • Mastering Data and Business Analytics
        • Basic Excel for Data Analysis
        • Intermediate and Advanced Excel for Data Analysis
        • Excel for Business Analysis & Analyst
        • PivotTable, PowerPivot, PowerQuery & DAX for Data Analysi
        • Data Analytics and Visualization with Tableau
        • Data Analytics with Power-BI
        • Data Analytics and Visualisation with SQL
      • Mastering Python for Data Analytics and Visualization
        • Python Foundation for Data Analytics
        • Data Analysis Using Python With Numpy and Pandas
        • Data Visualization Using Python with Matplotlib and Seaborn
        • Data Science with SQL Server and Azure SQL Database
        • Data Analytics and Visualisation with PowerBI
      • Complete Microsoft Excel Master Program
        • Basic Excel for Data Analysis
        • Excel Interactive Dashboard for Data Analysis
        • Intermediate and Advanced Excel for Data Analysis
        • PivotTable PowerPivot, PowerQuery & DAX for Data Analysis
        • Excel for Data Analysis and Visualization
        • Excel for Business Analysis & Analyst
      • Data Analytics With SQL Master Program
      • Master Data Analytics With PowerBI
      • Financial Reporting with PowerBI
      • Data Analysts with Power-BI
      • Data Analytics and Visualization with Excel
    • Mastering Python
      • Python Developer Masters Program
        • Python Programming Certification Course
        • Data Science With Python Certification
        • Artificial Intelligence Certification Course
        • PySpark Certification Training Course
        • Python Statistics for Data Science
      • The Complete Python Developer
      • Data Analysis and Visualization with Python
      • Complete Data Scientist with Python
      • Data Engineer with SQL and Python
      • Machine Learning Engineer with Python
    • Azure Cloud Computing
      • DevOps Engineer and Solutions Architect Master Program
      • Greaterheight Azure GH-602 Cloud Solution Architect Master
      • Greaterheight Azure GH-601 Cloud DevOps Master
      • Microsoft Azure az-900 Fundamentals
      • Microsoft Azure az-104 Administrator
      • Microsoft Azure az-204 Developer
      • Microsoft Azure az-305 Solutions Architect
      • Microsoft Azure az-400 DevOps Engineer
      • Microsoft Azure AI-900 Fundamentals
      • Microsoft Azure DP-100 Data Science
    • SQL and SQL-Server Database
      • Mastering SQL Server Development
      • Data Analytics With SQL Master Program
      • Data Engineer Course Online Masters Program
      • Data Science with SQL Server and Azure SQL Database
    • DevOps Development Program
      • DevOps Engineer & Solution Architect Expert Program
    • Data Science
      • Data Science With Python Certification
      • Pythom Statistics for Data Science
      • Data Science with SQL Server and Azure SQL Database
      • Complete Data Scientist with Python
  • Who We Serve
    • Individuals
    • Business
    • Universities
  • Partners
    • Employer Networks
    • Community Partnership
    • Opportunity Funds
    • Future Finance
    • Scholarships
  • Resources
    • Webinars
    • Blog
    • Tutorials
    • White Papers
    • Podcast
    • Events
  • Get Advice


The Complete Python Developer


Discover how to use Python's versatility and readable code for a variety of use cases. Enhance your custom functions by leveraging context managers and decorators, and learn how to improve the efficiency of your code. You will also Enhance your code by discovering techniques to measure and improve its efficiency, and bring your loose code together by developing your own Python packages!


Get Advice


The Complete Python Developer


Who this course is for:

  • Anyone who wants to master Python 3 and wants to ace the PCEP-30-01 and the PCAP-31-02 Exams.
  • Anyone that wants to get tons of practice in writing Python code.
  • Anyone looking to level up their skills and master a new programming language.
  • Anyone that wants to learn how to program in Python and wants to be a highly paid Python Developer.
  • Anyone who wants to get into: Web Development, Machine Learning, Data Science and other hot job markets.


What you will Learn:

  • Become a professional Python Developer and get hired.
  • Master modern Python 3.11(latest) fundamentals as well as advanced topics.
  • Learn Object Oriented Programming.
  • Learn Function Programming.
  • Build 10+ real world Python projects you can show off.
  • Learn how to use Python in Web Development.
  • Learn Machine Learning with Python
  • Build a Machine Learning Model
  • Learn Data Science - Analyze and Visualize Data.
  • Build a professional Portfolio Website.
  • Use Python to process: Images, CSVs, PDFs, and other Files.
  • Build a Web Scraper with Python and Beautiful Soup.
  • Use Python to send Emails and SMS.
  • Use Python to build a Twitter bot.
  • Learn to Test, Debug and Handle Errors in your Python programs.
  • Learn best practices to write clean, performant, and bug free code.
  • Learn to use Selenium and Python in Automation.

Course Benefits & Key Features

The Complete Python Developer’s benefits and key features.
Modules

30+ Modules.

Lessons

80+ Lessons

Practical

40+ Hands-On Labs

Life Projects

5+ Projects

Resume

CV Preparations

Job

Jobs Reference

Recording

Session Recording

Interviews

Mock Interviews

Support

On Job Supports

Membership

Membership Access

Networks

Networking

Certification

Certificate of Completion


INSTRUCTOR-LED LIVE ONLINE CLASSES

Our learn-by-building-project method enables you to build

practical or coding experience that sticks. 95% of our                        

learners say they have confidence and remember more               

when they learn by building real world projects which is                

required to work in your real life.


  • Get step-by-step guidance to practice your skills without getting stuck
  • Validate your technical problem-solving skills in a real environment
  • Troubleshoot complex scenarios to practice what you learned
  • Develop production experience that translates into real-world
.

The Complete Python Developer Job Outlook


.

Ranked #1 Programming
Language

TIOBE and PYPL ranks Python as the most popular global programming language.

Python Salary
Trend

The average salary for a Python Developer is $114,489 per year in the United States.

44.8% Compound annual growth rate (CAGR)

The global python market size is expected to reach USD 100.6 million in 2030.



  • Python Developer
  • Data Analyst
  • Python Data Scientist

Job Titles include:


  • Data Scientist
  • AI Engineer


  • AI Researcher
  • Machine Learning Engineer

Why The Complete Python Developer?

Learn In-demand Skills

Those with careers in data analysis learn relevant in-demand skills that span industries and add value to every digital-enabled organization.


Earn a Higher Salary

Experienced data analysts can earn up to $112,000 per year and transition into higher-paying jobs as Senior Data Analysts, Data Scientists, or Analytics Managers.

Positive Job Outlook

The data analytics market is predicted to hit $132.90 Billion USD by 2026. COVID-19 pandemic accelerated the adoption of data analytics solutions and services.

Shape the Future

Data analysts transform organizations by capitalizing on data to improve their business decisions and solve critical real-world problems.

Become a Leader

Being a central part of an organization’s decision-making processes, analytics experts often pick up strong leadership skills as well.

Data Analysis are Constantly Evolving

Data analysis moves quickly, and data analysts are constantly learning and advancing in their careers.




GreaterHeight Certificates holders are prepared to work at companies like these.

Some Alumni Testimonies

Investing in the course "Become a Data Analyst" with GreaterHeight Academy is great value for the money and I highly recommend. The trainer is very knowledgeable, very engaging, provided us with quality training sessions on all courses and was easily acessible for queries. We also had access to the course materials and also the timely availability of the recorded videos made it easy and aided the learning process..

QUEEN OBIWULU

Team Lead, Customer Success

The training was fantastic, the instructor is an awesome lecturer, relentless and not tired in his delivery. He obviously enjoys teaching, it comes natural to him. We got more than we expected. He extended my knowledge of Excel beyond what I knew, and the courses were brilliantly delivered. They reach out, follow up, ask questions, and in fact the support has been great. They are highly recommended and I would definitely subscribe to other training programs from them.

BISOLA OGUNRO

Fraud Analytics Risk Oversight Manager

It's one thing to look for just a Data Analysis training, and it's another to get the knowledge transferred through certified professional trainers. No matter your initial level of proficiency in any of the Data Analysis tools, GreaterHeight Academy would meet you there and take you up to a highly proficienct and confident level in a short time at a reasonable pace. I learnt a lot of Data Analysis tools and skills at GreaterHeight from patient and resourceful teachers.

TUNDE MEREDITH

Operation Director - Abbfem Technology

The Data Analysis training program was one of the best I have attended. The way GreaterHeight took off with Excel and concluded the four courses with Excel was a mind blowing - it was WOW!! I concluded that I'm on the right path with the right mentor to take me from a novice to professional. GreaterHeight is the best as far as impacting Data Analysis knowledge is concern. I would shout it at the rooftop to recommend GreaterHeight to any trainee that really wants to learn.

JOHN OSI PETER

Greaterheight

I wanted to take a moment to express my deepest gratitude for the opportunity to study data analytics at GreaterHeight Academy. I am truly impressed by the level of dedication and support that the sponsor and CEO have put into this program. GreaterHeight Academy is without a doubt the best tech institution out there, providing top-notch education and resources for its students. One of the advantages of studying at GreaterHeight Academy is the access to the best tools and technologies in the field. 

AYODELE PAYNE

Sales/Data Analyst

It is an unforgettable experience that will surely stand the test of time learning to become a Data Analyst with GreaterHeights Academy. The Lecture delivery was so impactful and the Trainer is vast and well knowledgeable in using the applicable tools for the Sessions. Always ready to go extra mile with you. The supports you get during and after the lectures are top notch with materials and resources available to build your confidence on and off the job.

ADEBAYO OLADEJO

Customer Service Advisor (Special Operations)

The Complete Python Developer Courses


Learn to program using Python, gaining the skills needed to develop software. No prior knowledge is required! In this track, you'll discover how to use Python's versatility and readable code for a variety of use cases. Start by learning to define variables, perform calculations, and implement custom logic and rules for your code! Then, you'll progress to working with modules and packages and define your own custom functions. As you build your knowledge, dive deeper into Python's built-in tools to support you in quickly building software, covering iterators, decorators, and regular expressions! Wrap up the track with an introduction to object-oriented programming, where you'll define custom classes and utilize inheritance to enhance and expand your code rapidly.

Build on the Associate Python Developer career track, taking your knowledge and skills to the next level! Now you are familiar with the core skills required for Python Developers, such as building classes and functions, using iterators, and working with various data types, you'll move on to more advanced concepts and techniques. Start by learning about different approaches for testing your code, using pytest to perform checks. Enhance your code by discovering techniques to measure and improve its efficiency, and bring your loose code together by developing your own Python packages! Add a new tool to your developer arsenal by learning to use Git for version control, which is crucial when working on collaborative software projects. You'll discover how developers gather information from the internet and manipulate it for their use cases through web scraping. Finally, you'll conclude by working with various data structures and algorithms! At the end of this track, you'll be equipped to tackle complex Python software projects!


Introduction to Python for Developers
What is Python and why use it?
Learn all about Python a versatile and powerful language, perfect for software development. No prior experience required!

Learn the fundamentals
Perform calculations, store and manipulate information in variables using various data structures, and write descriptive comments describing your code to others.

Build your workflow
Use comparison operators in combination with for and while loops to execute code based on conditions being met, enabling a fully customizable workflow.

3 Modules | 4+ Hours | 3+ Skills

Course Modules 


Discover the wonders of Python - why it is popular and how to use it. No prior knowledge required!


  1. What is Python?
  2. The benefits of Python
  3. Use-cases for Python
  4. How to run Python code
  5. Working with Python files
  6. Python as a calculator
  7. Advanced calculations
  8. Variables and data types
  9. Naming conventions
  10. Checking data types
  11. Working with variables
  12. Checking and updating conditions

Learn how and when to use Python's built-in data structures, including lists, dictionaries, sets, and tuples!


  1. Working with strings
  2. Multi-line strings
  3. Modifying string variables
  4. Lists
  5. Building a party playlist
  6. Subsetting lists
  7. Dictionaries
  8. Building a playlist dictionary
  9. Working with dictionaries
  10. Sets and tuples
  11. Last quarter's revenue
  12. DJ Sets
  13. Choosing a data structure

Conditional statements and operators, for and while loops all combine to enable customized workflows for your needs!


  1. Conditional statements and operators
  2. Conditional statements
  3. Checking inflation
  4. On the rental market
  5. For loops
  6. Looping through a list
  7. Updating a variable with for loops
  8. Conditional looping with a dictionary
  9. While loops
  10. Breaking a while loop
  11. Converting to a while loop
  12. Conditional while loops
  13. Building a workflow
  14. Appending to a list
  15. Book genre popularity
  16. Working with keywords
  17. Recap!


Intermediate Python for Developers
Elevate your Python skills to the next level
This course will delve deeper into Python's rich ecosystem, focusing on essential aspects such as built-in functions, modules, and packages. You'll learn how to harness the power of Python's built-in functions effectively, enabling you to streamline your code. The course will introduce you to the power of Python's modules, empowering you to develop quicker by reusing existing code rather than writing your own from scratch every time! You'll see how people have extended modules to create their own open-source software, known as packages, discovering how to download, import, and work with packages in your programs.

Master custom functions
You'll learn best practices for defining functions, including comprehensive knowledge of how to write user-friendly docstrings to ensure clarity and maintainability. You'll dive into advanced concepts such as default arguments, enabling you to create versatile functions with predefined values. The course will equip you with the knowledge and skills to handle arbitrary positional and keyword arguments effectively, enhancing the flexibility and usability of your functions. By understanding how to work with these arguments, you'll be able to create more robust and adaptable solutions to various programming challenges.

Debug your code and use error handling techniques
You'll learn to interpret error messages, including tracebacks from incorrectly using functions from packages. You'll use keywords and techniques to adapt your custom functions, effectively handling errors and providing bespoke feedback messages to developers who misuse your code!

3 Modules | 3+ Hours | 3+ Skills

Course Modules 


Discover Python's rich ecosystem of built-in functions and modules, plus how to download and work with packages.


  1. Built-in functions
  2. Get some assistance
  3. Counting the elements
  4. Performing calculations
  5. Modules
  6. What is a module?
  7. Working with the string module
  8. Importing from a module
  9. Packages
  10. Package or module?
  11. Working with pandas
  12. Performing calculations with pandas

Learn the fundamentals of functions, from Python's built-in functions to creating your own from scratch!


  1. Defining a custom function
  2. Custom function syntax
  3. Cleaning text data
  4. Building a password checker
  5. Default and keyword arguments
  6. Positional versus keyword arguments
  7. Adding a keyword argument
  8. Data structure converter function
  9. Docstrings
  10. Single-line docstrings
  11. Multi-line docstrings
  12. Arbitrary arguments
  13. Adding arbitrary arguments
  14. Arbitrary keyword arguments

Build lambda functions on the fly, and discover how to error-proof your code!


  1. Lambda functions
  2. Adding tax
  3. Calling lambda in-line
  4. Lambda functions with iterables
  5. Introduction to errors
  6. Debugging code
  7. Module and package tracebacks
  8. Fixing an issue
  9. Error handling
  10. Avoiding errors
  11. Returning errors
  12. Recap!


Python Toolbox
In this Python Toolbox course, you'll continue to build more advanced Python skills. First, you'll learn about iterators, objects you have already encountered in the context of for loops. You'll then learn about list comprehensions, which are extremely handy tools for all data professionals and developers working in Python. You'll end the course by working through a case study in which you'll apply all the techniques you learned in both parts of this course.

3 Modules | 4+ Hours | 3+ Skills

Course Modules 


You'll learn all about iterators and iterables, which you have already worked with when writing for loops. You'll learn some handy functions that will allow you to effectively work with iterators. And you’ll finish the module with a use case that is pertinent to the world of data science and dealing with large amounts of data—in this case, data from Twitter that you will load in chunks using iterators.


  1. Introduction to iterators
  2. Iterators vs. Iterables
  3. Iterating over iterables (1)
  4. Iterating over iterables (2)
  5. Iterators as function arguments
  6. Playing with iterators
  7. Using enumerate
  8. Using zip
  9. Using * and zip to 'unzip'
  10. Using iterators to load large files into memory
  11. Processing large amounts of Twitter data
  12. Extracting information for large amounts of Twitter data

In this module, you'll build on your knowledge of iterators and be introduced to list comprehensions, which allow you to create complicated lists—and lists of lists—in one line of code! List comprehensions can dramatically simplify your code and make it more efficient, and will become a vital part of your Python toolbox. You'll then learn about generators, which are extremely helpful when working with large sequences of data that you may not want to store in memory, but instead generate on the fly.


  1. List comprehensions
  2. Write a basic list comprehension
  3. List comprehension over iterables
  4. Writing list comprehensions
  5. Nested list comprehensions
  6. Advanced comprehensions
  7. Using conditionals in comprehensions (1)
  8. Using conditionals in comprehensions (2)
  9. Dict comprehensions
  10. Introduction to generator expressions
  11. List comprehensions vs. generators
  12. Write your own generator expressions
  13. Changing the output in generator expressions
  14. Build a generator
  15. Wrapping up comprehensions and generators.
  16. List comprehensions for time-stamped data
  17. Conditional list comprehensions for time-stamped data

This module will allow you to apply your newly acquired skills toward wrangling and extracting meaningful information from a real-world dataset—the World Bank's World Development Indicators. You'll have the chance to write your own functions and list comprehensions as you work with iterators and generators to solidify your Python chops.


  1. Welcome to the case study!
  2. Zipping dictionaries
  3. Writing a function to help you
  4. Using a list comprehension
  5. Turning this all into a DataFrame
  6. Using Python generators for streaming data
  7. Processing data in chunks (1)
  8. Writing a generator to load data in chunks (2)
  9. Writing a generator to load data in chunks (3)
  10. Using pandas' read_csv iterator for streaming data
  11. Writing an iterator to load data in chunks (1)
  12. Writing an iterator to load data in chunks (2)
  13. Writing an iterator to load data in chunks (3)
  14. Writing an iterator to load data in chunks (4)
  15. Writing an iterator to load data in chunks (5)
  16. Final thoughts


Data Types in Python
Have you got your basic Python programming chops down but are yearning for more? Then this is the course for you. Herein, you'll consolidate and practice your knowledge of lists, dictionaries, tuples, sets, and date times. You'll see their relevance in working with lots of real data and how to leverage several of them in concert to solve multistep problems, including an extended case study using Chicago metropolitan area transit data. You'll also learn how to use many of the objects in the Python Collections module, which will allow you to store and manipulate your data for a variety of purposes. After taking this course, you'll be ready to tackle many data challenges Pythonically.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


This module will introduce you to the fundamental Python data types - lists, sets, and strings. These data containers are critical as they provide the basis for storing and looping over ordered data. To make things interesting, you'll apply what you learn about these types to answer questions about the New York Baby Names dataset!


  1. Introduction and lists
  2. Manipulating lists for fun and profit
  3. Looping over lists
  4. Meet the tuples
  5. Data type usage
  6. Using and unpacking tuples
  7. Making tuples by accident
  8. Strings
  9. Formatted String Literals ("f" strings)
  10. Combining multiple strings
  11. Finding strings in other strings

At the root of all things Python is a dictionary. Herein, you'll learn how to use them to safely handle data that can viewed in a variety of ways to answer even more questions about the New York Baby Names dataset. You'll explore how to loop through data in a dictionary, access nested data, add new data, and come to appreciate all of the wonderful capabilities of Python dictionaries.


  1. Using dictionaries
  2. Creating and looping through dictionaries
  3. Safely finding by key
  4. Altering dictionaries
  5. Adding and extending dictionaries
  6. Popping and deleting from dictionaries
  7. Pythonically using dictionaries
  8. Working with dictionaries more pythonically
  9. Checking dictionaries for data
  10. Mixed data types in dictionaries
  11. Dealing with nested dictionaries
  12. Dealing with nested mixed types

Let's take a step away from dictionaries and look at some other common numeric and boolean data types along with sets.


  1. Numeric data types
  2. Choosing when to use integers and floats
  3. Printing floats
  4. Division with integers and floats
  5. Booleans - The logical data type
  6. More than just true and false
  7. Comparisons
  8. Truthy, True, Falsey, and False
  9. Sets (unordered data with optimized logic operations)
  10. Determining set differences
  11. Finding all the data and the overlapping data between sets

Some data types are composites of other data types and give me even more capabilities than a fundamental data type. Let's explore a few complex types from the collections module and data classes.


  1. Counting made easy
  2. Using Counter on lists
  3. Finding most common elements
  4. Dictionaries of unknown structure - Defaultdict
  5. Creating dictionaries of an unknown structure
  6. Safely appending to a key's value list
  7. What do you mean I don't have any class? Namedtuple
  8. Creating namedtuples for storing data
  9. Leveraging attributes on namedtuples
  10. Dataclasses
  11. Creating a dataclass
  12. Using dataclasses
  13. Wrap-up


Working with Dates and Times in Python

You'll probably never have a time machine, but how about a machine for analyzing time? As soon as time enters any analysis, things can get weird. It's easy to get tripped up on day and month boundaries, time zones, daylight saving time, and all sorts of other things that can confuse the unprepared. If you're going to do any kind of analysis involving time, you’ll want to use Python to sort it out. Working with data sets on hurricanes and bike trips, we’ll cover counting events, figuring out how much time has elapsed between events and plotting data over time. You'll work in both standard Python and in Pandas, and we'll touch on the dateutil library, the only timezone library endorsed by the official Python documentation. After this course, you'll confidently handle date and time data in any format like a champion.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


Hurricanes (also known as cyclones or typhoons) hit the U.S. state of Florida several times per year. To start off this course, you'll learn how to work with date objects in Python, starting with the dates of every hurricane to hit Florida since 1950. You'll learn how Python handles dates, common date operations, and the right way to format dates to avoid confusion.


  1. Dates in Python
  2. Which day of the week?
  3. How many hurricanes come early?
  4. Math with dates
  5. Subtracting dates
  6. Counting events per calendar month
  7. Putting a list of dates in order
  8. Turning dates into strings
  9. Printing dates in a friendly format
  10. Representing dates in different ways

Bike sharing programs have swept through cities around the world -- and luckily for us, every trip gets recorded! Working with all of the comings and goings of one bike in Washington, D.C., you'll practice working with dates and times together. You'll parse dates and times from text, analyze peak trip times, calculate ride durations, and more.


  1. Dates and times
  2. Creating datetimes by hand
  3. Counting events before and after noon
  4. Printing and parsing datetimes
  5. Turning strings into datetimes
  6. Parsing pairs of strings as datetimes
  7. Recreating ISO format with strftime()
  8. Unix timestamps
  9. Working with durations
  10. Turning pairs of datetimes into durations
  11. Average trip time
  12. The long and the short of why time is hard

In this module, you'll learn to confidently tackle the time-related topic that causes people the most trouble: time zones and daylight saving. Continuing with our bike data, you'll learn how to compare clocks around the world, how to gracefully handle "spring forward" and "fall back," and how to get up-to-date timezone data from the dateutil library.


  1. UTC offsets
  2. Creating timezone aware datetimes
  3. Setting timezones
  4. What time did the bike leave in UTC?
  5. Time zone database
  6. Putting the bike trips into the right time zone
  7. What time did the bike leave? (Global edition)
  8. Starting daylight saving time
  9. How many hours elapsed around daylight saving?
  10. March 29, throughout a decade
  11. Ending daylight saving time
  12. Finding ambiguous datetimes
  13. Cleaning daylight saving data with fold

To conclude this course, you'll apply everything you've learned about working with dates and times in standard Python to working with dates and times in Pandas. With additional information about each bike ride, such as what station it started and stopped at and whether or not the rider had a yearly membership, you'll be able to dig much more deeply into the bike trip data. In this module, you'll cover powerful Pandas operations, such as grouping and plotting results by time.


  1. Reading date and time data in Pandas
  2. Loading a csv file in Pandas
  3. Making timedelta columns
  4. Summarizing datetime data in Pandas
  5. How many joyrides?
  6. It's getting cold outside, W20529
  7. Members vs casual riders over time
  8. Combining groupby() and resample()
  9. Additional datetime methods in Pandas
  10. Timezones in Pandas
  11. How long per weekday?
  12. How long between rides?
  13. Wrap-up


Regular Expressions in Python
As a data scientist, you will encounter many situations where you will need to extract key information from huge corpora of text, clean messy data containing strings, or detect and match patterns to find useful words. All of these situations are part of text mining and are an important step before applying machine learning algorithms. This course will take you through understanding compelling concepts about string manipulation and regular expressions. You will learn how to split strings, join them back together, interpolate them, as well as detect, extract, replace, and match strings using regular expressions. On the journey to master these skills, you will work with datasets containing movie reviews or streamed tweets that can be used to determine opinion, as well as with raw text scraped from the web.


4 Modules | 5+ Hours | 4 Skills

Course Modules 


Start your journey into the regular expression world! From slicing and concatenating, adjusting the case, removing spaces, to finding and replacing strings. You will learn how to master basic operation for string manipulation using a movie review dataset.


  1. Introduction to string manipulation
  2. First day!
  3. Artificial reviews
  4. Palindromes
  5. String operations
  6. Normalizing reviews
  7. Time to join!
  8. Split lines or split the line?
  9. Finding and replacing
  10. Finding a substring
  11. Where's the word?
  12. Replacing negations

Following your journey, you will learn the main approaches that can be used to format or interpolate strings in python using a dataset containing information scraped from the web. You will explore the advantages and disadvantages of using positional formatting, embedding expressing inside string constants, and using the Template class.


  1. Positional formatting
  2. Put it in order!
  3. Calling by its name
  4. What day is today?
  5. Formatted string literal
  6. Literally formatting
  7. Make this function
  8. On time
  9. Template method
  10. Preparing a report
  11. Identifying prices
  12. Playing safe

Time to discover the fundamental concepts of regular expressions! In this key module, you will learn to understand the basic concepts of regular expression syntax. Using a real dataset with tweets meant for sentiment analysis, you will learn how to apply pattern matching using normal and special characters, and greedy and lazy quantifiers.


  1. Introduction to regular expressions
  2. Are they bots?
  3. Find the numbers
  4. Match and split
  5. Repetitions
  6. Everything clean
  7. Some time ago
  8. Getting tokens
  9. Regex metacharacters
  10. Finding files
  11. Give me your email
  12. Invalid password
  13. Greedy vs. non-greedy matching
  14. Understanding the difference
  15. Greedy matching
  16. Lazy approach

In the last step of your journey, you will learn more complex methods of pattern matching using parentheses to group strings together or to match the same text as matched previously. Also, you will get an idea of how you can look around expressions.


  1. Capturing groups
  2. Try another name
  3. Flying home
  4. Alternation and non-capturing groups
  5. Backreferences
  6. Parsing PDF files
  7. Close the tag, please!
  8. Reeepeated characters
  9. Lookaround
  10. Surrounding words
  11. Filtering phone numbers
  12. Finishing line


Intro to Object-Oriented Programming in Python
Foundations of OOP
Delve into the fundamental concepts that form the foundation of object-oriented programming (OOP). You'll discover the core principles of classes and objects, learn how to define and instantiate objectives in Python and explore how to assign attributes during instantiation.

Inheritance
Expand your knowledge by mastering inheritance and creating subclasses that build on functionality defined in other classes. You'll distinguish between class-level and instance-level data, implement class methods, and customize the functionality of subclasses!

Equality, Exception Handling, and Best Practices
Explore the versatility of Python in handling object comparisons and discover techniques for effective string representation of objects, enabling human-readable outputs. Learn how to fortify your code against unexpected errors and enhance its reliability through exception handling. Understand the importance of error detection and graceful error recovery, ensuring a smoother execution of your programs. Acquire best practices for writing clean, maintainable, and Pythonic code that adheres to OOP principles.

3 Modules | 4+ Hours | 3 Skills

Course Modules 


Learn what object-oriented programming (OOP) is, how it differs from procedural programming, and how it can be applied. You'll define your own custom classes containing methods, attributes, and constructors, and use them to create objects!


  1. What is OOP?
  2. OOP terminology
  3. Exploring objects and classes
  4. Class anatomy: attributes and methods
  5. Understanding class definitions
  6. Create your first class
  7. Adding methods and attributes
  8. Extending a class
  9. Class anatomy: the __init__ constructor
  10. Correct use of __init__
  11. Add a class constructor
  12. Building a class from scratch

Discover two of OOP's core concepts: inheritance and polymorphism. Learn how to implement them to minimize code re-use and extend functionality, along with reviewing the differences between class-level data and instance-level data.


  1. Class vs. instance attributes
  2. Class-level attributes
  3. Implementing logic for attributes
  4. Changing class attributes
  5. Class methods
  6. Adding an alternative constructor
  7. Building a BetterDate Class
  8. Class inheritance
  9. Create a subclass
  10. Understanding inheritance
  11. Customizing functionality via inheritance
  12. Customize a subclass
  13. Method inheritance
  14. Inheritance of class attributes

Learn how to compare objects, define and customize string representations of objects, and even how to apply inheritance to create and catch custom exceptions, enabling bespoke error-handling.


  1. Operator overloading: comparing objects
  2. Overloading equality
  3. Checking class equality
  4. Inheritance comparison and string representation
  5. Object representation
  6. Comparison and inheritance
  7. String representation of objects
  8. Exceptions
  9. Catching exceptions
  10. Custom exceptions
  11. Wrap Up


Introduction to Shell
The Unix command line has survived and thrived for almost 50 years because it lets people do complex things with just a few keystrokes. Sometimes called "the universal glue of programming," it helps users combine existing programs in new ways, automate repetitive tasks, and run programs on clusters and clouds that may be halfway around the world. This course will introduce its key elements and show you how to use them efficiently.

5 Modules | 6+ Hours | 4 Skills

Course Modules 


This module is a brief introduction to the Unix shell. You'll learn why it is still in use after almost 50 years, how it compares to the graphical tools you may be more familiar with, how to move around in the shell, and how to create, modify, and delete files and folders.


  1. How does the shell compare to a desktop interface?
  2. Where am I?
  3. How can I identify files and directories?
  4. How else can I identify files and directories?
  5. How can I move to another directory?
  6. How can I move up a directory?
  7. How can I copy files?
  8. How can I move a file?
  9. How can I rename files?
  10. How can I delete files?
  11. How can I create and delete directories?

The commands you saw in the previous module allowed you to move things around in the filesystem. This module will show you how to work with the data in those files. The tools we’ll use are fairly simple, but are solid building blocks.


  1. How can I view a file's contents?
  2. How can I view a file's contents piece by piece?
  3. How can I look at the start of a file?
  4. How can I type less?
  5. How can I control what commands do?
  6. How can I list everything below a directory?
  7. How can I get help for a command?
  8. How can I select columns from a file?
  9. What can't cut do?
  10. How can I repeat commands?
  11. How can I select lines containing specific values?
  12. Why isn't it always safe to treat data as text?

The real power of the Unix shell lies not in the individual commands, but in how easily they can be combined to do new things. This module will show you how to use this power to select the data you want, and introduce commands for sorting values and removing duplicates.


  1. How can I store a command's output in a file?
  2. How can I use a command's output as an input?
  3. What's a better way to combine commands?
  4. How can I combine many commands?
  5. How can I count the records in a file?
  6. How can I specify many files at once?
  7. What other wildcards can I use?
  8. How can I sort lines of text?
  9. How can I remove duplicate lines?
  10. How can I save the output of a pipe?
  11. How can I stop a running program?

Most shell commands will process many files at once. This module shows you how to make your own pipelines do that. Along the way, you will see how the shell uses variables to store information.


  1. How does the shell store information?
  2. How can I print a variable's value?
  3. How else does the shell store information?
  4. How can I repeat a command many times?
  5. How can I repeat a command once for each file?
  6. How can I record the names of a set of files?
  7. A variable's name versus its value
  8. How can I run many commands in a single loop?
  9. Why shouldn't I use spaces in filenames?
  10. How can I do many things in a single loop?

History lets you repeat things with just a few keystrokes, and pipes let you combine existing commands to create new ones. In this module, you will see how to go one step further and create new commands of your own.


  1. How can I edit a file?
  2. How can I record what I just did?
  3. How can I save commands to re-run later?
  4. How can I re-use pipes?
  5. How can I pass filenames to scripts?
  6. How can I process a single argument?
  7. How can one shell script do many things?
  8. How can I write loops in a shell script?
  9. What happens when I don't provide filenames?
  10. Wrap up


Writing Efficient Python Code
As a Data Scientist, the majority of your time should be spent gleaning actionable insights from data -- not waiting for your code to finish running. Writing efficient Python code can help reduce runtime and save computational resources, ultimately freeing you up to do the things you love as a Data Scientist. In this course, you'll learn how to use Python's built-in data structures, functions, and modules to write cleaner, faster, and more efficient code. We'll explore how to time and profile code in order to find bottlenecks. Then, you'll practice eliminating these bottlenecks, and other bad design patterns, using Python's Standard Library, NumPy, and pandas. After completing this course, you'll have the necessary tools to start writing efficient Python code!

4 Modules | 5+ Hours | 4 Skills

Course Modules 


In this module, you'll learn what it means to write efficient Python code. You'll explore Python's Standard Library, learn about NumPy arrays, and practice using some of Python's built-in tools. This module builds a foundation for the concepts covered ahead.


  1. Welcome!
  2. Pop quiz: what is efficient
  3. A taste of things to come
  4. Zen of Python
  5. Building with built-ins
  6. Built-in practice: range()
  7. Built-in practice: enumerate()
  8. Built-in practice: map()
  9. The power of NumPy arrays
  10. Practice with NumPy arrays
  11. Bringing it all together: Festivus!

In this module, you will learn how to gather and compare runtimes between different coding approaches. You'll practice using the line_profiler and memory_profiler packages to profile your code base and spot bottlenecks. Then, you'll put your learnings to practice by replacing these bottlenecks with efficient Python code.


  1. Examining runtime
  2. Using %timeit: your turn!
  3. Using %timeit: specifying number of runs and loops
  4. Using %timeit: formal name or literal syntax
  5. Using cell magic mode (%%timeit)
  6. Code profiling for runtime
  7. Pop quiz: steps for using %lprun
  8. Using %lprun: spot bottlenecks
  9. Using %lprun: fix the bottleneck
  10. Code profiling for memory usage
  11. Pop quiz: steps for using %mprun
  12. Using %mprun: Hero BMI
  13. Using %mprun: Hero BMI 2.0
  14. Bringing it all together: Star Wars profiling

This module covers more complex efficiency tips and tricks. You'll learn a few useful built-in modules for writing efficient code and practice using set theory. You'll then learn about looping patterns in Python and how to make them more efficient.


  1. Efficiently combining, counting, and iterating
  2. Combining Pokémon names and types
  3. Counting Pokémon from a sample
  4. Combinations of Pokémon
  5. Set theory
  6. Comparing Pokédexes
  7. Searching for Pokémon
  8. Gathering unique Pokémon
  9. Eliminating loops
  10. Gathering Pokémon without a loop
  11. Pokémon totals and averages without a loop
  12. Writing better loops
  13. One-time calculation loop
  14. Holistic conversion loop
  15. Bringing it all together: Pokémon z-scores

This module offers a brief introduction on how to efficiently work with pandas DataFrames. You'll learn the various options you have for iterating over a DataFrame. Then, you'll learn how to efficiently apply functions to data stored in a DataFrame.


  1. Intro to pandas DataFrame iteration
  2. Iterating with .iterrows()
  3. Run differentials with .iterrows()
  4. Another iterator method: .itertuples()
  5. Iterating with .itertuples()
  6. Run differentials with .itertuples()
  7. pandas alternative to looping
  8. Analyzing baseball stats with .apply()
  9. Settle a debate with .apply()
  10. Optimal pandas iterating
  11. Replacing .iloc with underlying arrays
  12. Bringing it all together: Predict win percentage
  13. Wrap up!


Software Engineering Principles in Python
Data scientists can experience huge benefits by learning concepts from the field of software engineering, allowing them to more easily reutilize their code and share it with collaborators. In this course, you'll learn all about the important ideas of modularity, documentation, & automated testing, and you'll see how they can help you solve Data Science problems quicker and in a way that will make future you happy. You'll even get to use your acquired software engineering chops to write your very own Python package for performing text analytics.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


Why should you as a Data Scientist care about Software Engineering concepts? Here we'll cover specific Software Engineering concepts and how these important ideas can revolutionize your Data Science workflow!


  1. Python, data science, & software engineering
  2. The big ideas
  3. Python modularity in the wild
  4. Introduction to packages & documentation
  5. Installing packages with pip
  6. Leveraging documentation
  7. Conventions and PEP 8
  8. Using pycodestyle
  9. Conforming to PEP 8
  10. PEP 8 in documentation

Become a fully fledged Python package developer by writing your first package! You'll learn how to structure and write Python code that you can be installed, used, and distributed just like famous packages such as NumPy and Pandas.


  1. Writing your first package
  2. Minimal package requirements
  3. Naming packages
  4. Recognizing packages
  5. Adding functionality to packages
  6. Adding functionality to your package
  7. Using your package's new functionality
  8. Making your package portable
  9. Writing requirements.txt
  10. Installing package requirements
  11. Creating setup.py
  12. Listing requirements in setup.py

Object Oriented Programming is a staple of Python development. By leveraging classes and inheritance your Python package will become a much more powerful tool for your users.


  1. Adding classes to a package
  2. Writing a class for your package
  3. Using your package's class
  4. Adding functionality to classes
  5. Writing a non-public method
  6. Using your class's functionality
  7. Classes and the DRY principle
  8. Using inheritance to create a class
  9. Adding functionality to a child class
  10. Using your child class
  11. Multilevel inheritance
  12. Exploring with dir and help
  13. Creating a grandchild class
  14. Using inherited methods

You've now written a fully functional Python package for text analysis! To make maintaining your project as easy as possible we'll leverage best practices around concepts such as documentation and unit testing.


  1. Documentation
  2. Identifying good comments
  3. Identifying proper docstrings
  4. Writing docstrings
  5. Readability counts
  6. Using good function names
  7. Using good variable names
  8. Refactoring for readability
  9. Unit testing
  10. Using doctest
  11. Using pytest
  12. Documentation & testing in practice
  13. Documenting classes for Sphinx
  14. Identifying tools
  15. Final Thoughts


Introduction to Testing in Python
Why tests?
Plenty of people write code. Some of them make it work and profitable. But sometimes, even the smartest of the best programmers makes a mistake that can cost millions of dollars. How to decrease the possibility of getting into such a fiasco? How do you ensure that you create a program that does exactly what you want? The very simple answer is: write tests!

Python testing basics
During this journey, you will learn the very basics of creating tests in Python. You will meet four types of software testing methods. You will create your own tests to check if the program or a data pipeline works as expected before it goes to production. Whether it is the unexpected null, a typo in your dataset, or mixed-up signs in the equation. You can, and you will catch those cases with the tests.

Testing with pytest and unittest
After the course completion, you will know the types of testing methods, and you will be able to choose the most suitable ones for a specific context. You also will be able to design those tests and implement them in Python using the `pytest` and the `unittest` libraries.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


Learn what a test is and how to run the first one of your own with the pytest library! You will get used to the pytest testing framework and the command-line interface. You will also learn how to process specific contexts, like "failed tests" and "skipping the test" with pytest markers.


  1. Introduction to Testing in Python
  2. The first test suite
  3. pytest.raises
  4. Invoking pytest from CLI
  5. Run the test!
  6. Run with the keyword
  7. Applying test markers
  8. Markers use cases
  9. Failed tests with xfail
  10. Conditional skipping

Learn what a fixture is and how to simplify your code by using it in tests. You will get familiar with the fixture @pytest.fixture decorator and the fixture tools. You will analyze your code to see the "fixture part" in it. Finally, learn how to use teardowns to prevent software failures.


  1. Introduction to fixtures
  2. Getting familiar with fixtures
  3. Data preparation
  4. Run with a fixture
  5. Chain Fixtures Requests
  6. Chain this out
  7. List with a custom length
  8. Fixtures autouse
  9. autouse statements
  10. Auto add numbers
  11. Fixtures Teardowns
  12. Data with teardown
  13. Read data with teardown

Learn what the basic testing types are and their features. Learn about test cases and how they help to implement tests. You will get more skilled with creating test functions and running pytest from CLI in IDE exercises. Finally, you will be able to differentiate the different testing types and create tests for each of them.


  1. Unit testing with pytest
  2. Unit testing terms
  3. Cover more test cases
  4. Factorial of number
  5. Run factorial
  6. Feature testing with pytest
  7. Feature or unit testing
  8. Aggregate with sum
  9. Integration testing with pytest
  10. Integration test or not
  11. Read the file
  12. Performance testing with pytest
  13. What is performance testing?
  14. Finding an element
  15. Speed of loops

In this final module, you will meet the unittest framework. First, you will learn basic assertion methods, then its CLI interface, and how to use fixtures. Finally, you will put everything together in the practical examples of data pipelines.


  1. Meeting the Unittest
  2. Factorial with unittest
  3. Is prime or not
  4. CLI Interface
  5. Run factorial with unittest
  6. Erroneouos factorial
  7. Unittest options
  8. Fixtures in unittest
  9. Test the string variable
  10. Palindrome check
  11. Practical examples
  12. Integration and unit tests
  13. Feature and performance tests
  14. Energy pipeline
  15. Wrap Up!


Learn Git
This course introduces learners to version control using Git. You will discover the importance of version control when working on data science projects and explore how you can use Git to track files, compare differences, modify and save files, undo changes, and allow collaborative development through the use of branches. You will gain an introduction to the structure of a repository, how to create new repositories and clone existing ones, and show how Git stores data. By working through typical data science tasks, you will gain the skills to handle conflicting files!


4 Modules | 5+ Hours | 4 Skills

Course Modules

In the first module, you’ll learn what version control is and why it is essential for data projects. Then, you’ll discover what Git is and how to use it for a version control workflow.


  1. Introduction to version control with Git
  2. Using the shell
  3. Checking the version of Git
  4. Saving files
  5. Where does Git store information?
  6. The Git workflow
  7. Adding a file
  8. Adding multiple files
  9. Comparing files
  10. What has changed?
  11. What is going to be committed?
  12. What's in the staging area?

Next, you’ll examine how Git stores data, learn essential commands to compare files and repositories at different times, and understand the process for restoring earlier versions of files in your data projects.


  1. Storing data with Git
  2. Interpreting the commit structure
  3. Viewing a repository's history
  4. Viewing a specific commit
  5. Viewing changes
  6. Comparing to the second most recent commit
  7. Comparing commits
  8. Who changed what?
  9. Undoing changes before committing
  10. How to unstage a file
  11. Undoing changes to unstaged files
  12. Undoing all changes
  13. Restoring and reverting
  14. Restoring an old version of a repo
  15. Deleting untracked files
  16. Restoring an old version of a file

In this module, you'll learn tips and tricks for configuring Git to make you more efficient! You'll also discover branches, identify how to create and switch to different branches, compare versions of files between branches, merge branches together, and deal with conflicting files across branches.


  1. Configuring Git
  2. Modifying your email address in Git
  3. Creating an alias
  4. Ignoring files
  5. Branches
  6. Branching and merging
  7. Creating new branches
  8. Checking the number of branches
  9. Comparing branches
  10. Working with branches
  11. Switching branches
  12. Merging two branches
  13. Handling conflict
  14. Recognizing conflict syntax
  15. Resolving a conflict

This final module is all about collaboration! You'll gain an introduction to remote repositories and learn how to work with them to synchronize content between the cloud and your local computer. You'll also see how to create new repositories and clone existing ones, along with discovering a workflow to minimize the risk of conflicts between local and remote repositories.


  1. Creating repos
  2. Setting up a new repo
  3. Converting an existing project
  4. Working with remotes
  5. Cloning a repo
  6. Defining and identifying remotes
  7. Gathering from a remote
  8. Fetching from a remote
  9. Pulling from a remote
  10. Pushing to a remote
  11. Pushing to a remote repo
  12. Handling push conflicts
  13. Wrap up!


Developing Python Packages
Do you find yourself copying and pasting the same code between files, wishing it was easier to reuse and share your awesome snippets? Wrapping your code into Python packages can help! In this course, you’ll learn about package structure and the extra files needed to turn loose code into convenient packages. You'll also learn about import structure, documentation, and how to maintain code style using flake8. You’ll then speed up your package development by building templates, using cookiecutter to create package skeletons. Finally, you'll learn how to use setuptools and twine to build and publish your packages to PyPI—the world stage for Python packages!

4 Modules | 5+ Hours | 4+ Skills

Course Modules 


Get your package started by converting scripts you have already written. You'll create a simple package which you can use on your own computer.


  1. Starting a package
  2. Modules, packages and subpackages
  3. From script to package
  4. Putting your package to work
  5. Documentation
  6. Writing function documentation with pyment
  7. Writing function documentation with pyment II
  8. Package and module documentation
  9. Structuring imports
  10. Sibling imports
  11. Importing from parents
  12. Exposing functions to users

Make your package installable for yourself and others. In this module, you'll learn to deal with dependencies, write READMEs, and include licenses. You'll also complete all the steps to publish your package on PyPI—the main home of Python packages.


  1. Installing your own package
  2. Adding the setup script
  3. Installing your package locally
  4. Utilizing editable installs
  5. Dealing with dependencies
  6. User dependencies
  7. Development dependencies
  8. Including licences and writing READMEs
  9. Writing a README
  10. MANIFEST - Including extra files with your package
  11. Publishing your package
  12. Building a distribution
  13. Uploading distributions

Bring your package up to a professional standard. Discover how to use pytest to guard against errors, tox to test if your package functions with multiple versions of Python, and flake8 to maintain great code style.


  1. Testing your package
  2. Creating the test directory
  3. Writing some basic tests
  4. Running your tests
  5. Testing your package with different environments
  6. Setting up tox
  7. Running tox
  8. Keeping your package stylish
  9. Appropriate style filtering
  10. Using flake8 to tidy up a file
  11. Ignoring specific errors
  12. Configuring flake8

Create your packages more quickly. In this final module, you’ll learn how to use cookiecutter to generate all the supporting files your package needs, Makefiles to simplify releasing new versions, and be introduced to the last few files your package needs to attract users and contributors.


  1. Faster package development with templates
  2. Using package templates
  3. Version numbers and history
  4. CONTRIBUTING.md
  5. History file
  6. Tracking version number with bumpversion
  7. Makefiles and classifiers
  8. PyPI classifiers
  9. Using makefiles
  10. Wrap-up


Web Scraping in Python
The ability to build tools capable of retrieving and parsing information stored across the internet has been and continues to be valuable in many veins of data science. In this course, you will learn to navigate and parse html code, and build tools to crawl websites automatically. Although our scraping will be conducted using the versatile Python library scrapy, many of the techniques you learn in this course can be applied to other popular Python libraries as well, including BeautifulSoup and Selenium. Upon the completion of this course, you will have a strong mental model of html structure, will be able to build tools to parse html code and access desired information, and create a simple scrapy spiders to crawl the web at scale.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


Learn the structure of HTML. We begin by explaining why web scraping can be a valuable addition to your data science toolbox and then delving into some basics of HTML. We end the module by giving a brief introduction on XPath notation, which is used to navigate the elements within HTML code.


  1. Web Scraping Overview
  2. Web-scraping is not nonsense!
  3. HyperText Markup Language
  4. HTML tree wordy navigation
  5. From Tree to HTML
  6. Attributes
  7. Keep it Classy
  8. Finding href
  9. Crash Course in XPath
  10. Where am I?
  11. It's Time to P
  12. A classy span

Leverage XPath syntax to explore scrapy selectors. Both of these concepts will move you towards being able to scrape an HTML document.


  1. XPathology
  2. Counting Elements in the Wild
  3. Body Appendages
  4. Choose DataCamp!
  5. Off the Beaten XPath
  6. Where it's @
  7. Check your Class
  8. Hyper(link) Active
  9. Secret Links
  10. Selector Objects
  11. XPath Chaining
  12. Divvy Up This Exercise
  13. The Source of the Source
  14. Course Class by Inspection
  15. Requesting a Selector

Learn CSS Locator syntax and begin playing with the idea of chaining together CSS Locators with XPath. We also introduce Response objects, which behave like Selectors but give us extra tools to mobilize our scraping efforts across multiple websites.


  1. From XPath to CSS
  2. The (X)Path to CSS Locators
  3. Get an "a" in this Course
  4. The CSS Wildcard
  5. CSS Attributes and Text Selection
  6. You've been `href`ed
  7. Top Level Text
  8. All Level Text
  9. Respond Please!
  10. Reveal By Response
  11. Responding with Selectors
  12. Selecting from a Selection
  13. Survey
  14. Titular
  15. Scraping with Children

Learn to create web crawlers with scrapy. These scrapy spiders will crawl the web through multiple pages, following links to scrape each of those pages automatically according to the procedures we've learned in the previous modules.


  1. Your First Spider
  2. Inheriting the Spider
  3. Hurl the URLs
  4. Start Requests
  5. Self Referencing is Classy
  6. Starting with Start Requests
  7. Parse and Crawl
  8. Pen Names
  9. Crawler Time
  10. Capstone
  11. Time to Run
  12. DataCamp Descriptions
  13. Capstone Crawler
  14. The Finale


Data Structures and Algorithms in Python
Recognize Popular Data Structures and Algorithms
Most computer programs are based on a few data structures and algorithms. Learn about what’s behind the hood of most of your computer interactions in this four-hour course! You’ll familiarize yourself with some of the most common data structures: linked lists, stacks, queues, and trees. You’ll also implement popular algorithms, such as Depth First Search, Breadth First Search, Bubble sort, Merge sort, and Quicksort.
Learn to Spot Data Structures and Algorithms in Everyday Life
You'll practice applying data structures and algorithms to decks of cards, music playlists, international dishes, and stacks of books. You’ll walk away with the ability to recognize common data structures and algorithms, and implement them in day-to-day applications!
Analyze the Efficiency of Algorithms
Along the way, you’ll stop to analyze popular algorithms in terms of their efficiency. You’ll come to grips with “Big O Notation”, the industry standard for describing the complexity of an algorithm.
Sharpen Your Python Programming Knowledge
Being well-versed with data structures and algorithms means being able to take everyday problems and solve them using efficient code. You’ll be practising this in Python, you’ll take these fundamental and transferable skills with you to any programming language.

4 Modules | 5+ Hours | 4 Skills

Course Modules 


You’ll begin by learning what algorithms and data structures are. You will discover two data structures: linked lists and stacks. You will then learn how to calculate the complexity of an algorithm by using Big O Notation.


  1. Introduction!
  2. Implementing a linked list
  3. Inserting a node at the beginning of a linked list
  4. Removing the first node from a linked list
  5. Understanding Big O Notation
  6. Big O Notation: true or false?
  7. Practicing with Big O Notation
  8. Working with stacks
  9. Implementing a Stack with the push method
  10. Implementing the pop method for a stack
  11. Using Python's LifoQueue

This second module will teach you the basics of queues, hash tables, trees, and graphs data structures. You will also discover what recursion is.


  1. Working with queues
  2. Implementing a queue for printer tasks
  3. Using Python's SimpleQueue
  4. Hash tables
  5. Correcting bugs in a dictionary
  6. Iterating over a nested dictionary
  7. Trees and graphs
  8. Correcting bugs in a tree implementation
  9. Building a weighted graph
  10. Understanding Recursion
  11. Fibonacci sequence
  12. Towers of Hanoi

This module will focus on searching algorithms, like linear search, binary search, depth first search, and breadth first search. You will also study binary search trees and how to search within them.


  1. Linear Search and Binary Search
  2. Implementing binary search
  3. Binary search using recursion
  4. Binary Search Tree (BST)
  5. Inserting a node into a binary search tree
  6. Finding the minimum node of a BST
  7. Depth First Search (DFS)
  8. Printing book titles in alphabetical order
  9. Using pre-order traversal with Polish notation
  10. Implementing DFS for graphs
  11. Breadth First Search (BFS)
  12. Using breadth first search in binary trees
  13. Finding a graph vertex using BFS

This module will teach you some sorting algorithms, like bubble sort, selection sort, insertion sort, merge sort, and quicksort.


  1. Bubble Sort
  2. Sorting numbers using bubble sort
  3. Correcting a bug in the bubble sort algorithm
  4. Selection Sort and Insertion Sort
  5. Coding selection sort
  6. Sorting cards using insertion sort
  7. Merge sort
  8. Merge sort: true or false?
  9. Correcting a bug in the merge sort algorithm
  10. Quicksort
  11. Sorting numbers using quicksort
  12. Implementing the quicksort algorithm
  13. Wrap up!

THE COMPLETE PYTHON DEVELOPER COST


United States

$899.99

United Kingdom

£799.99

Career and Certifications


GreaterHeight Academy's Certificate Holders also prepared work at companies like:



Our Advisor is just a CALL away

+1 5169831065                                    +447474275645
Available 24x7 for your queries


Talk to our advisors

Our advisors will get in touch with you in the next 24 hours.


Get Advice


FAQs

The Complete Python Developer  Course

  • Python, created by Guido van Rossum in 1991, is a high-level, readable programming language known for its simplicity. It's versatile, with applications in web development, data analysis, AI, and more. Python's extensive standard library and rich ecosystem enhance its capabilities. It's cross-platform compatible and supported by a large community. Python's popularity has grown, making it widely used in diverse industries.

  • A Python developer is a software developer or programmer who specializes in using the Python programming language for creating applications, software, or solutions. They have expertise in writing Python code, understanding the language's syntax, libraries, and frameworks. Python developers are skilled in utilizing Python's features to develop web applications, data analysis tools, machine learning models, automation scripts, and other software solutions.
  • They work in various industries, collaborating with teams or independently to design, implement, test, and maintain Python-based projects. Python developers often possess knowledge of related technologies and tools to enhance their development process.

  • Python Developer Masters Program is a structured learning path recommended by leading industry experts and ensures that you transform into a proficient Python Developer. Being a full fledged Python Developer requires you to master multiple technologies and this program aims at providing you an in-depth knowledge of the entire Python programming practices. Individual courses at GreaterHeight Academy focus on specialization in one or two specific skills; however, if you intend to become a master in Python programming then this is your go to path to follow.

  • Yes. But you can also raise a ticket with the dedicated support team at any time. If your query does not get resolved through email, we can also arrange one-on-one sessions with our support team. However, our support is provided for a period of Twelve Weeks from the start date of your course.

There are several reasons why becoming a Python developer can be a rewarding career choice. Here are a few:

  • Versatility and Popularity: Python is a versatile programming language that can be used for various purposes, such as web development, data analysis, machine learning, artificial intelligence, scientific computing, and more. It has gained immense popularity in recent years due to its simplicity, readability, and extensive library ecosystem. Python is widely used in both small-scale and large-scale projects, making it a valuable skill in the job market.
  • Ease of Learning: Python has a clean and intuitive syntax that emphasizes readability, which makes it relatively easy to learn compared to other programming languages. Its simplicity allows beginners to grasp the fundamentals quickly and start building useful applications in a relatively short amount of time. This accessibility makes Python an attractive choice for both novice and experienced programmers.
  • Rich Ecosystem and Libraries: Python offers a vast collection of libraries and frameworks that can accelerate development and simplify complex tasks. For example, Django and Flask are popular web development frameworks that provide robust tools for building scalable and secure web applications. NumPy, Pandas, and Matplotlib are widely used libraries for data analysis and visualization. TensorFlow and PyTorch are prominent libraries for machine learning and deep learning. These libraries, among many others, contribute to Python's efficiency and effectiveness as a development language.
  • Job Opportunities: The demand for Python developers has been steadily growing in recent years. Many industries, including technology, finance, healthcare, and academia, rely on Python for various applications. By becoming a Python developer, you open up a wide range of career opportunities, whether you choose to work for a large corporation, a startup, or even as a freelancer. Additionally, Python's versatility allows you to explore different domains and switch roles if desired.
  • Community and Support: Python has a vibrant and supportive community of developers worldwide. This community actively contributes to the language's development, creates open-source libraries, and provides assistance through forums, online communities, and resources.

  • There are no prerequisites for enrollment to this Masters Program. Whether you are an experienced professional working in the IT industry or an aspirant planning to enter the world of Python programming, this masters program is designed and developed to accommodate various professional backgrounds.

  • Python Developer Masters Program has been curated after thorough research and recommendations from industry experts. It will help you differentiate yourself with multi-platform fluency and have real-world experience with the most important tools and platforms. GreaterHeight Academy will be by your side throughout the learning journey - We’re Ridiculously Committed.

  • The recommended duration to complete this Python Developer Masters Program is about 20 weeks, however, it is up to the individual to complete this program at their own pace.

The roles and responsibilities of a Python developer may vary depending on the specific job requirements and industry. However, here are some common tasks and responsibilities associated with the role:

  1. Developing Applications: Python developers are responsible for designing, coding, testing, and debugging applications using Python programming language. This includes writing clean, efficient, and maintainable code to create robust software solutions.
  2. Web Development: Python is widely used for web development. As a Python developer, you may be involved in building web applications, using frameworks like Django or Flask. This includes developing backend logic, integrating databases, handling data processing, and ensuring the smooth functioning of the web application.
  3. Data Analysis and Visualization: Python offers powerful libraries like NumPy, Pandas, and Matplotlib, which are extensively used for data analysis and visualization. Python developers may be responsible for manipulating and analyzing large datasets, extracting insights, and presenting them visually.
  4. Machine Learning and AI: Python is a popular choice for machine learning and artificial intelligence projects. Python developers may work on implementing machine learning algorithms, training models, and integrating them into applications. This involves using libraries like TensorFlow, PyTorch, or scikit-learn.
  5. Collaborating and Teamwork: Python developers often work as part of a development team. They collaborate with other team members, including designers, frontend developers, project managers, and stakeholders. Effective communication and teamwork skills are crucial to ensure smooth project execution.
  6. Documentation: Python developers are expected to document their code, providing clear explanations and instructions for others who may work on or maintain the codebase in the future. Documentation helps in understanding the code and facilitating collaboration.
  7. Continuous Learning: Technology is constantly evolving, and as a Python developer, you need to stay updated with the latest advancements, libraries, frameworks, and best practices. Continuous learning and self-improvement are essential to excel in this role.

The Python Developer training course is for those who want to fast-track their Python programming career. This Python Developer Masters Program will benefit people working in the following roles:

  1. Freshers
  2. Engineers
  3. IT professionals
  4. Data Scientist
  5. Machine Learning Engineer
  6. AI Engineer
  7. Business analysts
  8. Data analysts

  • Top companies such as Microsoft, Google, Meta, Citibank, Well Fargo, and many more are actively hiring certified Python professionals at various positions.

  • On completing this Python Developer Masters Program, you’ll be eligible for the roles like: Python Developer, Web Developer, Data Analyst, Data Scientist, Software Engineer and many more.

  • There is undoubtedly great demand for data analytics as 96% of organizations seek to hire Data Analysts. The most significant data analyst companies that employ graduates who wish to have a data analyst career are Manthan, SAP, Oracle, Accenture Analytics, Alteryx, Qlik, Mu Sigma Analytics, Fractal Analytics, and Tiger Analytics. Professional Data Analyst training will make you become a magician of any organization, and you will spin insights by playing with big data.

A successful data analyst possesses a combination of technical skills and leadership skills.

  • Technical skills include knowledge of database languages such as SQL, R, or Python; spreadsheet tools such as Microsoft Excel or Google Sheets for statistical analysis; and data visualization software such as Tableau or Qlik. Mathematical and statistical skills are also valuable to help gather, measure, organize, and analyze data while using these common tools.
  • Leadership skills prepare a data analyst to complete decision-making and problem-solving tasks. These abilities allow analysts to think strategically about the information that will help stakeholders make data-driven business decisions and to communicate the value of this information effectively. For example, project managers rely on data analysts to track the most important metrics for their projects, to diagnose problems that may be occurring, and to predict how different courses of action could address a problem.

Career openings are available practically from all industries, from telecommunications to retail, banking, healthcare, and even fitness. Without extensive training and effort, it isn't easy to get data analyst career benefits. So, earning our Data Analyst certification will allow you to keep up-to-date on recent trends in the industry.

  • Yes, we do. We will discuss all possible technical interview questions and answers during the training program so that you can prepare yourself for interview.

  • No. Any abuse of copyright is taken seriously. Thanks for your understanding on this one.

  • Yes, we would be providing you with the certificate of completion of the program once you have successfully submitted all the assessment and it has been verified by our subject matter experts.

  • GreaterHeight is offering you the most updated, relevant, and high-value real-world projects as part of the training program. This way, you can implement the learning that you have acquired in real-world industry setup. All training comes with multiple projects that thoroughly test your skills, learning, and practical knowledge, making you completely industry ready.
  • You will work on highly exciting projects in the domains of high technology, ecommerce, marketing, sales, networking, banking, insurance, etc. After completing the projects successfully, your skills will be equal to 6 months of rigorous industry experience.

All our mentors are highly qualified and experience professionals. All have at least 15-20 yrs. of development experience in various technologies and are trained by GreaterHeight Academy to deliver interactive training to the participants.

Yes, we do. As the technology upgrades, we do update our content and provide your training on latest version of that technology.

  • All online training classes are recorded. You will get the recorded sessions so that you can watch the online classes when you want. Also, you can join other class to do your missing classes.

OUR POPULAR COURSES

Data  Analytics and Visualization With Python

Data Analytics and Visualization With Python

Advanced developments of expertise in cleaning, transforming, and modelling data to obtain insight into  corporate decision making as a Senior Data Analyst - Using Python.

View Details
Data Science Training Masters Program

Data Science Training Masters Program

Learn Python, Statistics, Data Preparation, Data Analysis, Querying Data, Machine Learning, Clustering, Text Processing, Collaborative Filtering, Image Processing, etc..

View Details
Microsoft Azure DP-100 Data Science

Microsoft Azure DP-100 Data Science

You will Optimize & Manage Models,   Perform Administration by using T-SQL, Run Experiment & Train Models, Deploy & Consume Models, and Automate Tasks.

View Details
Machine Learning using Python

Machine Learning using Python

Learn Data Science and Machine Learning from scratch, get hired, and have fun along the way with the most modern, up-to-date Data Science course on.

View Details
Microsoft Azure PL-300 Data Analysis

Microsoft Azure PL-300 Data Analysis

You will learn how to Design a Data Model in Power BI, Optimize Model Performance,   Manage Datasets in Power BI and Create Paginated Reports.

View Details
Microsoft Azure DP-203 Data Engineer

Microsoft Azure DP-203 Data Engineer

You will learn Batch & Real Time Analytics, Azure Synapse Analytics, Azure Databricks,   Implementing Security and ETL & ELT Pipelines.

View Details

The GreaterHeight Advantage

0+

Accredited Courseware

Most of our training courses are accredited by the respective governing bodies.

0+

Assured Classes

All our training courses are assured & scheduled dates are confirmed to run by SME.

0+

Expert Instructor Led Programs

We have well equipped and highly experienced instructors to train the professionals.

OUR CLIENTS

We Have Worked With Some Amazing Companies Around The World

Our awesome clients we've had the pleasure to work with!


Client 01
Client 02
Client 03
Client 04
Client 05
Client 06
Client 07
  • Contact info
  • Facebook
  • WhatsApp
  • (+86)1234567809
  • creative@gmail.com
  • Back to top