The Complete Python and PostgreSQL Developer Course

Video description

Ever wanted to learn one of the most popular programming languages on the planet? Why not learn two of the most popular at the same time?

Python and SQL are widely used by small to large technology companies thanks to their powerful, yet extremely flexible features. While Python is used in the industry for embedded software, web development, desktop applications, and mobile apps, PostgreSQL allows your applications to become even more powerful by storing, retrieving, and filtering through large datasets easily. This course is your one-stop-shop for everything Python and PostgreSQL. You’ll advance from an absolute Python and PostgreSQL beginner to an experienced software developer.

Get ready to transform your world and become a super-confident app developer!

What You Will Learn

  • Extend Python applications by using professional data storage — PostgreSQL
  • Understand advanced concepts, such as data structures and algorithms, that are extremely useful in jobs and interviews


If you’re a complete beginner to programming and Python, this course will provides concise explanations with hands-on projects. Intermediate programmers will be able to fly through the first couple of sections and quickly learn about PostgreSQL and advanced Python concepts. This course is likely not for advanced programmers, although it has a lot of useful information that will serve as a reference!

About The Authors

Codestars By Rob Percival: Codestars, by Rob Percival, is a revolutionary online learning platform on a mission to transform the way people learn to code. With a focus on simplicity, logic, and fun, Rob has empowered over half a million students through his courses.

Recognizing the need for diverse and comprehensive learning experiences, Rob established Codestars as a collaborative effort. Codestars provides learners of all ages and proficiency levels with the tools and knowledge needed to build functional websites and apps. By making coding accessible and enjoyable, Codestars aims to simplify the learning journey and unlock the potential of aspiring coders worldwide.

Jose Salvatierra Fuentes: Jose Salvatierra has been teaching online for over seven years, and he loves helping students learn to code and master software development. He founded Teclado to bring software development to everyone; his objective is for you to truly understand everything that goes on behind the scenes.

Coding is extremely rewarding. As you learn, things start to click and make sense. You can join the dots of all the things that weren’t quite clear before.

Jose can help you with Python and JavaScript issues, particularly in web and backend development. He is experienced with programming libraries and frameworks such as Flask, React, React Native, and AngularJS. He has worked extensively with UNIX systems, MongoDB, PostgreSQL, and advanced system architecture design.

Publisher resources

Download Example Code

Table of contents

  1. Chapter 1 : Installing Python
    1. Introduction
    2. Installing Python on Windows
    3. Installing Python on Mac
  2. Chapter 2 : Python 101
    1. The Python interactive shell (IDLE)
    2. Numbers and Strings in Python
    3. Variables in Python
    4. The str() method to convert to Strings
    5. Running a Python file from the IDLE
    6. Getting user input in Python
    7. The int() method to convert to Integers
    8. The format() method to simplify String formatting
  3. Chapter 3 : Magic Numbers in Python
    1. Lists in Python
    2. The for loop in Python
    3. Boolean expressions, True and False
    4. If statements in Python
    5. The 'in' keyword to check whether a list contains an element
    6. Giving the user multiple chances in our program
    7. Generating random integers in Python
    8. Defining our own methods in Python
    9. Returning values from our methods in Python
  4. Chapter 4 : A Lottery app
    1. The String split() method
    2. List comprehension in Python
    3. Python Sets — what is a Set?
    4. Set comprehension in Python
    5. Creating our lottery numbers
    6. Calculating the lottery winnings
  5. Chapter 5 : More complex applications: a student registration system
    1. Installing PyCharm, a professional Python tool
    2. Setting up PyCharm on Mac
    3. Setting up PyCharm on Windows
    4. Dictionaries in Python
    5. Advanced Dictionary usage in Python
    6. Methods returning dictionaries
    7. Appending to a list in Python
    8. Adding marks to our student data structure
    9. The sum() method in Python
    10. Iterating over a dictionary's keys and values
    11. Creating the application menu
  6. Chapter 6 : Object-Oriented Programming: a movie rental system
    1. What are classes? Classes in Python
    2. The Movie Class
    3. The User Class (and the __repr__ method)
    4. The filter() method in Python
    5. More Movie operations and methods
    6. Writing to a file in Python
    7. Saving CSV files with our data
    8. Loading our data from CSV files
    9. Saving JSON files with our data
    10. Loading our data from JSON files
    11. Argument unpacking in Python (the two asterisks)
    12. Creating the menu for our application
  7. Chapter 7 : Introduction to PostgreSQL
    1. Introduction to databases
    2. Installing PostgreSQL on Windows
    3. Using PostgreSQL on Windows
    4. Executing SQL queries on Windows
    5. Installing PostgreSQL on Mac
    6. Using PostgreSQL on Mac
    7. Executing SQL commands on Mac
    8. Using the sample data provided
    9. SQL: The SELECT command
    10. SQL: filtering with WHERE
    11. SQL: LIMIT for limiting the number of results
    12. SQL: UPDATE data in a table
    13. SQL: DELETE data from a table
    14. SQL Wildcards for filtering unknowns
    15. What is a JOIN?
    16. SQL: JOINs and JOIN examples
    17. SQL: GROUP BY for aggregation of data
    18. SQL: ORDER BY for sorting data
    20. SQL: INSERT INTO for adding data to a table
    21. SQL: SEQUENCE for auto-incrementing fields
    22. SQL: CREATE INDEX and advanced information about indexes
    23. SQL: DROP TABLE for deleting tables and data
  8. Chapter 8 : Advanced PostgreSQL
    1. SQL: VIEWs and what they are used for
    2. SQL: built-in functions and the HAVING construct
    3. Dates in SQL: an old problem
    4. Other data types in SQL (including JSON in PostgreSQL)
    5. Nested SELECT statements for complex queries
    6. The PostgreSQL SERIAL type
  9. Chapter 9 : Python and PostgreSQL
    1. Installing psycopg2 on Windows (2018 update)
    2. Installing psycopg2 on Windows (older versions)
    3. Installing psycopg2 on Mac
    4. Verifying everything works—don't proceed if it doesn't!
    5. Mac OS X: Fixing psycopg2 'library not loaded' error
    6. What is a virtual environment?
    7. psycopg2 on a virtualenv on Windows (2018 update)
    8. Psycopg2 on a virtualenv on Windows (older versions)
    9. Setting up the app structure, pip, and requirements.txt
    10. Recap on classes and object-oriented programming
    11. Saving to database from Python
    12. Loading from the database from Python
    13. Removing some duplicate code from our app
    14. Connection pooling and why it is important
    15. Creating the ConnectionPool class
    16. Creating the ConnectionFromPool class
    17. Obtaining a cursor from the ConnectionFromPool class
    18. The Database class and selective initialisation
    19. Cleaning up the Database class
    20. End of section review
  10. Chapter 10 : Python Web and APIs
    1. What is an API?
    2. Making requests in Python
    3. What is OAuth?
    4. Creating a Twitter app
    5. Setting up Twitter login
    6. Getting the OAuth request token
    7. More on the Python debugger—an essential tool
    8. Getting authorization by the user
    9. Getting the OAuth access token
    10. Performing Twitter requests: getting images
    11. Reusing code from the last section to save users
    12. Creating users in our app
    13. Retrieving users in our app
    14. Cleaning up the code—extremely important!
    15. Introduction to Flask and Python Web Development
    16. Adding a Twitter login endpoint
    17. Adding Twitter authorization
    18. Creating the user profile
    19. The Flask before_request decorator
    20. Checking if a user is already logged in
    21. Searching tweets and displaying them
    22. Searching for different things
    23. What is Bootstrap?
    24. Writing our own CSS
    25. Allowing users to perform custom searches
    26. Adding sentiment analysis with another API
  11. Chapter 11 : Introduction to Git and GitHub
    1. What is Git?
    2. Installing Git on Mac and Windows
    3. Introduction to the UNIX terminal
    4. The VIM text editor, a powerful terminal editor
    5. Dealing with files in the UNIX terminal
    6. What is a Git repository?
    7. git init — create a Git repository
    8. git add and git commit — staging and committing
    9. git log — viewing past commits
    10. Creating a repository on GitHub
    11. git remote — managing remote repositories
    12. Adding your SSH key to GitHub
    13. What is a README file? Introduction to Markdown
    14. git pull — pulling other's changes
  12. Chapter 12 : Advanced Python
    1. OOP: Inheritance
    2. OOP: Multiple Inheritance in Python
    3. OOP: What is composition?
    4. OOP: What is encapsulation?
    5. Introduction to Exceptions in Python
    6. Creating our own Exceptions
    7. Some of the available built-in Exceptions
    8. Python built-in methods
    9. Assertions in Python
    10. Lambda expressions in Python
    11. More uses of lambda expressions
    12. Lambda expressions in the wild
    13. Introduction to unit testing with unittest
  13. Chapter 13 : Data Structures and Algorithms
    1. What are data structures?
    2. What is a Linked List?
    3. Introduction to Linked List Assignment
    4. Programming our own Linked List in Python
    5. Creating a Queue
    6. Introduction to Queue Assignment
    7. Programming our own Queue in Python
    8. Creating a Stack
    9. Introduction to Stack Assignment
    10. Programming our own Stack in Python
    11. Creating a Binary Tree
    12. Introduction to Binary Tree Assignment
    13. Programming our own Binary Tree in Python

Product information

  • Title: The Complete Python and PostgreSQL Developer Course
  • Author(s): Codestars By Rob Percival, Jose Salvatierra Fuentes
  • Release date: July 2019
  • Publisher(s): Packt Publishing
  • ISBN: 9781789957488