1. Getting Started with Python and the JupyterLab 3 IDE. Object Orientated Programming (OOP)

Channel:
Subscribers:
7,760
Published on ● Video Link: https://www.youtube.com/watch?v=dIDOzqKcc04



Duration: 2:42:03
500 views
4


An introduction to the Python Programming Language and Object Orientated Programming using the JupyterLab IDE. This video is designed particular for those who want to understand Object Oriented Programming (OOP) for data science. i.e. those beginning in data science.

If you have not already installed Anaconda and updated JupyterLab to version 3, follow my installation tutorial video here:
https://www.youtube.com/watch?v=q8cMRt3w04Q
This video also discusses the merits of the JupyterLab IDE and the use of markdown to quickly write notes around your code in markdown files or markdown cells. JupyterLab is a good IDE for Python Code and Scientific style reports.

Written installation instructions (and uninstallation instructions) are available for both Windows and Linux here:
https://dellwindowsreinstallationguide.com/python-installing-anaconda-windows/
https://dellwindowsreinstallationguide.com/python-installing-anaconda-linux/

A more detailed interactive JupyterLab notebook associated with this tutorial video is available here and available to view within a web browser. The folder can also be downloaded and the notebook can be opened up within JupyterLab. For more details in opening the file see the installation tutorial video linked to above.
https://github.com/PhilipYip1988/1-object-orientated-programming/blob/main/objectorientatedprogramming.ipynb
To view in the browser the NBViewer version will load faster:
https://nbviewer.jupyter.org/github/PhilipYip1988/1-object-orientated-programming/blob/main/objectorientatedprogramming.ipynb

Note you may have to select wait or refresh when loading the file a handful of times as it takes tome to load the images.

Contents (time stamps to be added):
03:44 Numeric Variables
03:50 Integer Numbers (int)
15:32 Floating Point Numbers (float)
17:25 Booleans (bool)
20:29 Complex Numbers (complex)
23:36 Text Variables - A String of Characters (str)
32:20 The print Function
33:36 The input Function
36:47 if, elif and else Branching
44:42 try and except Branching
51:00 Custom functions
58:11 Lambda functions/expressions
1:02:15 Range objects (range) and (for and while) Looping
1:10:18 Asserting function inputs using the assert keyword
1:13:30 Custom Classes
1:14:56 Creating a Class
1:17:18 Inheritance
1:19:16 Class functions (known as methods)
1:21:52 Static Class methods
1:23:32 Instance variables (objects belonging to a class or instance of a class known as attributes)
1:24:12 Private attributes and methods
1:32:25 Datamodel methods (also known as double underscore abbreviated dunder methods or referred to as magic methods or special methods)
1:46:14 Inheritance with a Datamodel method
1:52:03 A custom Fraction class
2:02:29 Collections
2:02:37 The List collection (list)
2:04:28 Indexing a collection such as a str or list
2:12:36 The Dictionary Collection (dict)
2:16:30 Mutability
2:18:00 The Tuple Collection (tuple)
2:23:40 Tuple Unpacking and using Tuple Unpacking while assigning the output to a function or using a return statement while defining a function
2:25:55 Nested Collections
2:29:21 Creating a function with a variable number of positional input arguments *args or keyword input arguments **kwargs analogous to a list or dict respectively

Once comfortable with the object orientated programming concepts in this video it is recommended to familarise yourself with the three most popular Python libraries for data science numeric python abbreviated numpy used for array manipulation, the python and data analysis abbreviated pandas for dataframe or spreadsheet manipulation and the matplotlib python library. Detailed JupyterLab books for these are available here. To view in the browser use the nbviewer links:
https://nbviewer.jupyter.org/github/PhilipYip1988/2-numpy/blob/main/numpy.ipynb
https://nbviewer.jupyter.org/github/PhilipYip1988/3-pandas/blob/main/pandas.ipynb
https://nbviewer.jupyter.org/github/PhilipYip1988/4-matplotlib/blob/main/matplotlib.ipynb
Alternatively to open in JupyterLab, you can download the repository from GitHub:
https://github.com/PhilipYip1988/2-numpy/blob/main/numpy.ipynb
https://github.com/PhilipYip1988/3-pandas/blob/main/pandas.ipynb
https://github.com/PhilipYip1988/4-matplotlib/blob/main/matplotlib.ipynb

I have not yet made tutorial videos for these libraries in JupyterLab but have older videos made last year in the Spyder IDE:
https://www.youtube.com/watch?v=MohDi9XMOm0
https://www.youtube.com/watch?v=qaC7C7wOgos
https://www.youtube.com/watch?v=Wyq-z4pwgjA




Other Videos By Philip Yip


2021-06-21Hexadecimal Colour Encoding Explanation using a Red, Green, Blue LED
2021-06-20A Clean Install of Zorin Linux 16 Beta (Dell UEFI BIOS with Secure Boot and MOK)
2021-06-18Python Object Orientated Programming (Spyder 5 IDE)
2021-06-13Python Code Blocks and Debugging (Spyder 5 IDE)
2021-06-10Python Procedural Programming (Spyder 5 IDE)
2021-05-26A Clean Install of KDE Neon Dell UEFI BIOS with Secure Boot
2021-05-23Getting Started with Python and the Spyder 5 IDE (Object Orientated Programming OOP)
2021-05-17A Clean Install of DeepIn Linux 20.2.2 Dell UEFI BIOS and Secure Boot
2021-05-16A Clean Install of Linux Mint 20.2 (Dell UEFI BIOS with Secure Boot and MOK)
2021-05-07Python: formatted strings (fstrings) and format specification for str, int and float objects
2021-03-121. Getting Started with Python and the JupyterLab 3 IDE. Object Orientated Programming (OOP)
2021-02-10Windows 10 Insider Preview New Emoji Panel, Clipboard History and Touchscreen Keyboard Feedback
2021-01-15DeepIn 20.1 Touchscreen Test on XPS 13 9365
2021-01-12XPS 13 Wacom Touchscreen Issues on Linux Mint 20.1
2021-01-02Windows 10 Environment Variables
2020-11-28Create Windows 10 (UEFI or Legacy BIOS) Bootable USB on Windows 10 (All Versions 15H1-21H2)
2020-11-18Dell Thunderbolt Dock Ubuntu 20.04 Boot Issue
2020-11-18Updating the Dell UEFI BIOS with the Ubuntu Linux Firmware Update Manager or USB Flash Drive
2020-11-14Updating the Dell UEFI BIOS in Ubuntu 20.04 Using the Linux Vendor Firmware Service (LVFS)
2020-10-11Making a Screen Recording in Windows 10 using the Free VokoscreenNG
2020-10-04Securely Wiping All Internal Drives from the Dell UEFI BIOS Setup Using Dell Data Wipe (OptiPlex)