Introduction to Programming in Python

Course Content from Zyante
Course Number: CS101 Download Course Syllabus

This course provides an introduction to both the principles and the practice of programming, using a subset of Python 3. Materials and activities include: animations, learning questions, web-based programming windows, and web-based challenge activities. The course covers basic programming constructs (branches, loops, functions) to advanced topics such as inheritance, exceptions, and plotting.

This Course Includes:

  • Proctored Exams
  • 48 hours grading turn-around
  • Live technical and student support
  • Free transcription to your destination school
  • 150+ partner college and universities with direct articulation

  • Self Paced
  • Computer Science
  • Content by Zyante
Online Course
Introduction to Programming in Python   +$99.00
Tutoring (included)
Proctoring
Proctoring   +$0.00
Credits 3

No reviews have been submitted for Introduction to Programming in Python

Course Objectives

After completing this course, students will be able to:

  • Use standard input and output, and understand common syntax errors
  • Declare and initialize variables with valid identifiers
  • Develop programs that branch based on user input
  • Combine loops and arrays/lists, and develop programs with multiple arrays/lists
  • Write a function/method, then return from a function/method and parameterize a function
  • Initialize class variables with class constructor
  • Create derived and abstract classes
  • Write a recursive function
  • Use binary search, O notation, and algorithm analysis

Topic Number

Topic Title

Subtopics

1

Introduction to Python 3

  • Programming (general)
  • Programming using Python
  • Basic input and output
  • Errors
  • Development environment
  • Computers and programs (general)
  • Computer tour
  • Language history
  • Why whitespace matters
  • Python example: Salary calculation
  • Additional practice: Output art

2

Variables and Expressions

  • Variables and assignments
  • Identifiers
  • Objects
  • Numeric types: Floating point
  • Arithmetic expressions
  • Python expressions
  • Division and modulo
  • Module basics
  • Math module
  • Representing text
  • Additional practice: Number games

3

Types

  • String basics
  • List basics
  • Tuple basics
  • Set basics
  • Dictionary basics
  • Common data types summary
  • Additional practice: Grade calculation
  • Type conversions
  • Binary numbers
  • String formatting
  • Additional practice: Health data

4

Branching

  • If-else branches (general)
  • Detecting equal values with branches
  • Detecting ranges with branches
  • Detecting ranges using logical operators
  • Detecting ranges with gaps
  • Detecting multiple features with branches
  • Comparing data types and common errors
  • Membership & identity operators
  • Order of evaluation
  • Code blocks and indentation
  • Conditional expressions
  • Additional Practice: Tweet Decoder

5

Loops

  • Loops
  • While loops
  • More while examples
  • Counting
  • For loops
  • Counting using the range() function
  • While vs. for loops
  • Nested loops
  • Developing programs incrementally
  • Break and continue
  • Loop else
  • Getting both index and value when looping: enumerate()
  • Additional practice: Dice statistics

6

Functions

  • User-defined function basics
  • Function parameters
  • Returning values from functions
  • Dynamic typing
  • Reasons for defining functions
  • Function with branches/loops
  • Function stubs
  • Functions are objects
  • Functions: Common errors
  • Scope of variables and functions
  • Namespaces and scope resolution
  • Function arguments

7

Strings

  • String slicing
  • Advanced string formatting
  • String methods
  • Splitting and joining strings
  • The string format method

8

Lists and Dictionaries

  • Lists
  • List methods
  • Iterating over a list
  • List games
  • List nesting
  • List slicing
  • Loops modifying lists
  • List comprehensions
  • Sorting lists
  • Command-line arguments
  • Additional practice: Engineering examples
  • Dictionaries
  • Dictionary methods
  • Iterating over a dictionary
  • Dictionary nesting
  • String formatting using dictionaries

9

Classes

  • Classes: Introduction
  • Classes: Grouping data
  • Class methods
  • Class and instance object types
  • Class example: Seat reservation system
  • Class constructors
  • Class interfaces
  • Class customization
  • More operator overloading:
  • Classes as numeric types
  • Memory allocation and garbage collection

10

Exceptions
  • Handling exceptions using try and except
  • Multiple exception handlers
  • Raising exceptions
  • Exceptions with functions
  • Using finally to cleanup
  • Custom exception types

11

Modules
  • Modules
  • Finding modules
  • Importing specific names from a module
  • Executing modules as scripts
  • Reloading modules
  • Packages
  • Standard library

12

Files

  • Reading files
  • Writing files
  • Interacting with file systems
  • Binary data
  • Command-line arguments and files
  • The ‘with’ statement
  • Comma separated values files

13

Inheritance

  • Derived classes
  • Accessing base class attributes
  • Overriding class methods
  • Is-a versus has-a relationships
  • Mixin classes and multiple inheritance
  • Testing your code: The unittest module

14

Recursion

  • Recursive functions
  • Recursive algorithm: Search
  • Adding output statements for debugging
  • Creating a recursive function
  • Recursive math functions
  • Recursive exploration of all possibilities

15

Plotting

  • Introduction to plotting and visualizing data
  • Styling plots
  • Text and annotations
  • Numpy
  • Multiple plots

16

Searching and Sorting Algorithms

  • Searching and algorithms
  • Binary search
  • O notation
  • Algorithm analysis
  • Sorting: Introduction
  • Selection sort
  • Insertion sort
  • Quicksort
  • Merge sort

17

Final Exam

  • Final Exam

StraighterLine suggests, though does not require, that students take Pre-Calculus or its equivalent before enrolling in this course.

This course does not require a text.

StraighterLine does not apply letter grades. Students earn a percentage score. A passing percentage is 70% or higher.

If you have chosen a Partner College to award credit for this course, your final grade will be based upon that college’s grading scale. Only passing scores will be considered by Partner Colleges for an award of credit.

There are a total of 1000 points in the course:

Topic

Assessment

Points Available

1 Chapter 1: Introduction to Python 3 31
2 Chapter 2: Variables and Expressions 31
3 Chapter 3: Types 31
4 Chapter 4: Branching 31
5 Chapter 5: Loops 31
6 Chapter 6: Functions 31
7 Chapter 7: Strings 31
8 Chapter 8: Lists and Dictionaries 31
8 Midterm Exam 204
9 Chapter 9: Classes 31
10 Chapter 10: Exceptions 31
11 Chapter 11: Modules 31
12 Chapter 12: Files 31
13 Chapter 13: Inheritance 31
14 Chapter 14: Recursion 31
15 Chapter 15: Plotting 31
16 Chapter 16: Searching and Sorting Algorithms 31
17 Final Exam 300

Total

 

1000

Only registered users can write reviews. Please, log in or register

Explore Other Options