The Complete Python & PostgreSQL Developer Course

The Complete Python & PostgreSQL Developer Course
The Complete Python & PostgreSQL Developer Course
English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 22 Hours | 3.07 MB

Build 9 projects—master two essential and modern technologies in Python and PostgreSQL

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 used by many technology companies, small and large. That’s because they are powerful, yet extremely flexible.

Python is used in the industry for things like embedded software, web development, desktop applications, and even mobile apps!

PostgreSQL allows your applications to become even more powerful by storing, retrieving, and filtering through large data sets easily.

This course is your one-stop shop for everything Python and PostgreSQL, and the instructor is constantly available to support your learning and answer questions.

What you’ll learn

  • Understand software and programming with Python from beginning to end
  • Create Python applications ranging from beginner, basic applications to advanced, useful and engaging applications
  • Learn how to extend Python applications by using a professional data storage which is PostgreSQL
  • Understand advanced concepts extremely useful in jobs and interviews, such as data structures and algorithms
Table of Contents

Installing Python
1 Introduction
2 Installing Python on Windows
3 Installing Python on Mac

Python 101
4 My private letter to you as you start learning programming
5 The Live Chat for Q&A
6 The Python interactive shell (IDLE)
7 Numbers and Strings in Python
8 Variables in Python
9 The str() method to convert to Strings
10 Running a Python file from the IDLE
11 Getting user input in Python
12 The int() method to convert to Integers
13 The format() method to simplify String formatting
14 Age Program Code

Magic Numbers in Python
15 Lists in Python
16 The for loop in Python
17 Boolean expressions, True and False
18 If statements in Python
19 The ‘in’ keyword to check whether a list contains an element
20 Giving the user multiple chances in our program
21 Generating random integers in Python
22 Defining our own methods in Python
23 Returning values from our methods in Python
24 Magic Numbers Code

A Lottery app
25 The String split() method
26 List comprehension in Python
27 Python Sets — what is a Set?
28 Set comprehension in Python
29 Creating our lottery numbers
30 Calculating the lottery winnings
31 Lottery App Code

More complex applications: a student registration system
32 Installing PyCharm, a professional Python tool
33 Setting up PyCharm on Mac
34 Setting up PyCharm on Windows
35 Dictionaries in Python
36 Advanced Dictionary usage in Python
37 Methods returning dictionaries
38 Appending to a list in Python
39 Adding marks to our student data structure
40 The sum() method in Python
41 Iterating over a dictionary’s keys and values
42 Creating the application menu
43 Student Registration System Code

Object-Oriented Programming: a movie rental system
44 What are classes? Classes in Python
45 The Movie Class
46 The User Class (and the __repr__ method)
47 The filter() method in Python
48 More Movie operations and methods
49 Writing to a file in Python
50 Saving CSV files with our data
51 Loading our data from CSV files
52 Saving JSON files with our data
53 Loading our data from JSON files
54 Argument unpacking in Python (the two asterisks)
55 Creating the menu for our application
56 Movie Rental System Code

Introduction to PostgreSQL
57 Introduction to databases
58 Installing PostgreSQL on Windows
59 Using PostgreSQL on Windows
60 Executing SQL queries on Windows
61 Installing PostgreSQL on Mac
62 Using PostgreSQL on Mac
63 Executing SQL commands on Mac
64 Using the sample data provided
65 SQL: The SELECT command
66 SQL: filtering with WHERE
67 SQL: LIMIT for limiting the number of results
68 SQL: UPDATE data in a table
69 SQL: DELETE data from a table
70 SQL Wildcards for filtering unknowns
71 What is a JOIN?
72 SQL: JOINs and JOIN examples
73 SQL: GROUP BY for aggregation of data
74 SQL: ORDER BY for sorting data
76 SQL: INSERT INTO for adding data to a table
77 SQL: SEQUENCE for auto-incrementing fields
78 SQL: CREATE INDEX and advanced information about indexes
79 SQL: DROP TABLE for deleting tables and data

Advanced PostgreSQL
80 SQL: VIEWs and what they are used for
81 SQL: built-in functions and the HAVING construct
82 Dates in SQL: an old problem
83 Other data types in SQL (including JSON in PostgreSQL)
84 Nested SELECT statements for complex queries
85 The PostgreSQL SERIAL type

Python and PostgreSQL
86 Installing psycopg2 on Windows (2018 update)
87 Installing psycopg2 on Windows (older versions)
88 Installing psycopg2 on Mac
89 Verifying everything works—don’t proceed if it doesn’t!
90 Mac OS X: Fixing psycopg2 ‘library not loaded’ error
91 What is a virtual environment?
92 psycopg2 on a virtualenv on Windows (2018 update)
93 Psycopg2 on a virtualenv on Windows (older versions)
94 Setting up the app structure, pip, and requirements.txt
95 Recap on classes and object-oriented programming
96 Saving to database from Python
97 Loading from the database from Python
98 Removing some duplicate code from our app
99 Connection pooling and why it is important
100 Creating the ConnectionPool class
101 Creating the ConnectionFromPool class
102 Obtaining a cursor from the ConnectionFromPool class
103 The Database class and selective initialisation
104 Cleaning up the Database class
105 End of section review
106 Keep thinking: Section 9
107 Download the code for this section here

Python Web and APIs
108 What is an API?
109 Making requests in Python
110 What is OAuth?
111 Creating a Twitter app
112 Setting up Twitter login
113 Getting the OAuth request token
114 More on the Python debugger—an essential tool
115 Getting authorization by the user
116 Getting the OAuth access token
117 Performing Twitter requests: getting images
118 Reusing code from the last section to save users
119 Creating users in our app
120 Retrieving users in our app
121 Cleaning up the code—extremely important!
122 Introduction to Flask and Python Web Development
123 Adding a Twitter login endpoint
124 Adding Twitter authorization
125 Creating the user profile
126 The Flask before_request decorator
127 Checking if a user is already logged in
128 Searching tweets and displaying them
129 Searching for different things
130 What is Bootstrap?
131 Writing our own CSS
132 Allowing users to perform custom searches
133 Adding sentiment analysis with another API
134 Section 10: Twitter Login code

Introduction to Git and GitHub
135 What is Git?
136 Installing Git on Mac and Windows
137 Introduction to the UNIX terminal
138 The VIM text editor, a powerful terminal editor
139 Dealing with files in the UNIX terminal
140 What is a Git repository?
141 git init — create a Git repository
142 git add and git commit — staging and committing
143 git log — viewing past commits
144 Creating a repository on GitHub
145 git remote — managing remote repositories
146 Adding your SSH key to GitHub
147 What is a README file? Introduction to Markdown
148 git pull — pulling other’s changes
149 Keep thinking: Section 11

Advanced Python
150 OOP: Inheritance
151 OOP: Multiple Inheritance in Python
152 OOP: What is composition?
153 OOP: What is encapsulation?
154 Introduction to Exceptions in Python
155 Creating our own Exceptions
156 Some of the available built-in Exceptions
157 Python built-in methods
158 Assertions in Python
159 Lambda expressions in Python
160 More uses of lambda expressions
161 Lambda expressions in the wild
162 Introduction to unit testing with unittest
163 Section 12: Advanced Python code
164 Keep thinking: Section 12

Data Structures and Algorithms
165 What are data structures?
166 What is a Linked List?
167 Introduction to Linked List Assignment
168 Assignment: Linked List
169 Programming our own Linked List in Python
170 Creating a Queue
171 Introduction to Queue Assignment
172 Assignment: Queue
173 Programming our own Queue in Python
174 Creating a Stack
175 Introduction to Stack Assignment
176 Assignment: Stack
177 Programming our own Stack in Python
178 Creating a Binary Tree
179 Introduction to Binary Tree Assignment
180 Assignment: Binary Tree
181 Programming our own Binary Tree in Python

182 Next steps
183 Bonus lecture: web development with Python