• Length:
    5 Weeks
  • Effort:
    9–10 hours per week
  • Price:

    FREE
    Add a Verified Certificate for $99 USD

  • Institution
  • Subject:
  • Level:
    Introductory
  • Language:
    English
  • Video Transcript:
    English

Prerequisites

CS1301xII or equivalent knowledge is required. Certain problems may benefit from experience with algebra, geometry, pre-calculus, and trigonometry, but you can succeed without these.

About this course

Build on your existing knowledge of conditionals, loops, and functions by studying more about complex Python data structures, including strings, lists, dictionaries, and file input and output. Organized into five chapters, this course starts by covering the basics of data structures, then moves on to these four common data structures in Python:
  • Strings let you perform far more complex reasoning with text.
  • Lists let you process long lists of data, and even lists of lists of data for more complex reasoning.
  • Dictionaries let you more clearly code for complex types of data, and even simulate some basic elements of object-oriented programming.
  • File input and output brings your programs to life, allowing you to persist data across executions of the same program.

By the end of this course, you'll be able to write even more complex programs in Python that process and persist complex data structures. For example, you'll be able to write an ongoing gradebook application that tracks and updates your average over time, a program to calculate the net force based on several force magnitudes and directions, or a program that can turn a string like this into a StRiNg LiKe tHiS.

Structurally, the course is comprised of several parts. Instruction is delivered via a series of short (2-3 minute) videos. In between those videos, you'll complete both multiple choice questions and coding problems to demonstrate your knowledge of the material that was just covered.

What you'll learn

  • Strings, including advanced string methods.
  • Tuples and lists, including multi-dimensional lists.
  • File input and output, including multiple modes for file access.
  • Dictionaries, including replicating object-oriented reasoning using dictionaries.
  • Using control structures with data structures, such as looping over lists or error handling with files.
Chapter 1. Data Structures. Building the fundamental types of data – Booleans, integers, floating point numbers, and characters -- into more complex strings, lists, and dictionaries that can be persisted in files.

Chapter 2. Strings. Working with series of characters that can represent plaintext messages, passwords, and more, including all the complexities of combining human language with programming code.

Chapter 3. Lists. Taking fundamental data types like strings, integers, and floats and organizing them into tuples or lists that can represent complex structures of data; or for added complexity, creating lists of lists to create 2-dimensional (or more) data structures.

Chapter 4. File Input and Output. Taking information stored in your code and persisting it in an external file that can last after the program has finished executing, or loading data from a file into a program for processing.

Chapter 5. Dictionaries. Organizing key-value pairs (very similar to variables and values) into higher-level structures that can be easily passed around or reused with some intuitive structure.

Meet your instructors

David Joyner
Senior Research Associate at the College of Computing
Georgia Institute of Techology

Pursue a Verified Certificate to highlight the knowledge and skills you gain $99.00

View a PDF of a sample edX certificate
  • Official and Verified

    Receive an instructor-signed certificate with the institution's logo to verify your achievement and increase your job prospects

  • Easily Shareable

    Add the certificate to your CV or resume, or post it directly on LinkedIn

  • Proven Motivator

    Give yourself an additional incentive to complete the course

  • Support our Mission

    EdX, a non-profit, relies on verified certificates to help fund free education for everyone globally