Data Science
Introduction to Programming with Python
Course Overview
Though Python® has been in use for nearly thirty years, it has become one of the most popular languages for software development, particularly within the fields of data science, machine learning, artificial intelligence, and web development—all areas in which Python is widely used. Whether you’re relatively new to programming, or have experience in other programming languages, this course will provide you with a comprehensive first exposure to the Python programming language that can provide you with a quick start in Python, or as the foundation for further learning.
You will learn elements of the Python 3 language and development strategies by creating a complete program that performs a wide range of operations on a variety of data types, structures, and objects, implements program logic through conditional statements and loops, structures code for reusability through functions, classes, and modules, reads and writes files, and handles error conditions.
Course Length
Target Audience
This course is designed for people who want to learn the Python programming language in preparation for using Python to develop software for a wide range of applications, such as data science, machine learning, artificial intelligence, and web development.
Course Prerequisites
Some experience programming in an object-oriented language is helpful, but even if you don’t have such experience, this course can be useful to those that are new to programming.
To ensure your success in the course, you should have at least a foundational knowledge of personal computer use. You can obtain this level of skills and knowledge by taking a course such as one of the following Logical Operations courses:
- Using Microsoft® Windows® 10
- Microsoft® Windows® 10: Transition from Windows® 7
Course-specific Technical Requirements
Hardware:
For this course, you will need one computer for each student and one for the instructor. Each computer will need the following minimum hardware configurations:
- 1 gigahertz (GHz) 64-bit (x64) processor.
- 4 gigabytes (GB) of Random Access Memory (RAM).
- 32 GB available storage space.
- Monitor capable of a screen resolution of at least 1,024 × 768 pixels, at least a 256-color display, and a video adapter with at least 4 MB of memory.
- Bootable DVD-ROM or USB drive.
- Keyboard and mouse or a compatible pointing device.
- Fast Ethernet (100 Mb/s) adapter or faster and cabling to connect to the classroom network.
- IP addresses that do not conflict with other portions of your network.
- Internet access (contact your local network administrator).
- (Instructor computer only) A display system to project the instructor’s computer screen.
Software:
- Windows 10 (64-bit).
- Python version 3.9.0 (python-3.9.0-amd64.exe).
- PyCharm Community Edition version 2020.2.3 ( pycharm-community-2020.2.3.exe).Both Python and PyCharm are distributed with the course data files. Python is distributed under the Python Software Foundation License (PSFL). PyCharm Community Edition is distributed under the Apache License 2.0.
- If necessary, software for viewing the course slides. (Instructor machine only.)
Learning Outcomes / Objectives
In this course, you will develop simple command-line programs in Python.
You will:
- Set up Python and develop a simple application.
- Declare and perform operations on simple data types, including strings, numbers, and dates.
- Declare and perform operations on data structures, including lists, ranges, tuples, dictionaries, and sets.
- Write conditional statements and loops.
- Define and use functions, classes, and modules.
- Manage files and directories through code.
- Deal with exceptions.
Topic List
Course Content
Lesson 1: Setting Up Python and Developing a Simple Application
Topic A: Set Up the Development Environment
Topic B: Write Python Statements
Topic C: Create a Python Application
Topic D: Prevent Errors
Lesson 2: Processing Simple Data Types
Topic A: Process Strings and Integers
Topic B: Process Decimals, Floats, and Mixed Number Types
Lesson 3: Processing Data Structures
Topic A: Process Ordered Data Structures
Topic B: Process Unordered Data Structures
Lesson 4: Writing Conditional Statements and Loops in Python
Topic A: Write a Conditional Statement
Topic B: Write a Loop
Lesson 5: Structuring Code for Reuse
Topic A: Define and Call a Function
Topic B: Define and Instantiate a Class
Topic C: Import and Use a Module
Lesson 6: Writing Code to Process Files and Directories
Topic A: Write to a Text File
Topic B: Read from a Text File
Topic C: Get the Contents of a Directory
Topic D: Manage Files and Directories
Lesson 7: Dealing with Exceptions
Topic A: Handle Exceptions
Topic B: Raise Exceptions