This lesson is in the early stages of development (Alpha version)

Introduction to Python Programming

Course overview

This is the course website for Introductory Python, a workshop that is run by the SingHealth-Duke NUS Pathology Academic Clinical Program (Path ACP). This two day course aims to provide non-technical specialists with a basic understanding of the Python programming language.

To motivate the use of Python, we will be working with publicly available APIs. Since this course does not assume technical knowledge, a brief primer on how information is exchanged over the internet will be provided at the start of the course.

Prerequisites

In order for you to work through the exercises in this workshop, you will need to have the following software installed on your computer.

  1. Working installation of Python3
  2. Conda
  3. VSCode

You will also need to have internet access (so no corporate computer) in order to retrieve some of the responses that we will be working with from public APIs.

Schedule

Setup Download files required for the lesson
Day 1 09:00 Information exchange on the internet What exactly is the internet?
How is information exchanged on the internet?
Why APIs?
09:25 Getting started What is the dataset that we are working with?
Why do we need to use an environment manager such as conda?
10:05 Using libraries to extend Python How do I make use of what others have built in their libraries?
What are the best practices in importing libraries?
How do I know what a library provides?
10:35 Break
10:45 Variables as data containers in programming How do we store information in Python?
How do we modify data?
11:20 Introduction to data types What are data types?
Why does the data type matter?
How do we work with text in Python?
12:00 Lunch Break
13:00 Performing your first API query How can we perform our first API query?
How do we interact with the response we get back from the API?
13:40 Manipulating a collection of records What are some common data types used to store collections of items?
How can we manipulate the data in these collections?
14:30 Working with numeric and time data in Python What are the different numeric types in Python?
How can we work with date and time in Python?
How can we properly format our numeric data?
15:00 Break
15:30 How do I compare? How can we make comparisons between values in Python?
Truey-ness in Python - what do we mean by True and False?
16:00 Deciding an appropriate course of action in my program flow How can we make a program decide how to process an input?
17:00 Wrap-up What have we accomplished so far in our walk with the API response?
What are we going to do tomorrow?
17:10 Finish
Day 2 09:00 Taking a jog down memory lane What are we trying to do by the end of the session?
What have we covered in the session yesterday?
09:20 Building your own reusable code with functions How do we create reusable codes in our program?
What are some best practices in writing reusable codes?
10:40 Break
10:50 Managing user and code failures How are errors handled in Python?
What are some common coding practices to handle errors in programming?
12:00 Lunch Break
13:00 Automation using control functions How do we perform repetition without repetition?
14:10 Importing and exporting your results How do we read and export results between hard disk and Python memory?
What are some common file formats?
15:00 Break
15:30 Putting it altogther Are you ready to write your first Python code to work with the API of your choice?
16:40 Next steps What else can I do next?
How should I go about improving my Python skills?
17:00 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.