EdX

Computing in Python III: Data Structures (edX)

Computing in Python III: Data Structures (edX)

Learn more complex ways of handling data, including files, lists, and dictionaries for building complex programs. 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.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

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.
This course is part of the Introduction to Python Programming Professional Certificate.

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.

Syllabus

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.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

MATLAB et Octave pour débutants (edX) EdX
École Polytechnique Fédérale de Lausanne,EPFLx

MATLAB et Octave pour débutants (edX)

Premiers pas dans MATLAB et Octave avec un regard vers le calcul scientifique. Commencer à utiliser un logiciel est toujours délicat, on ne sait jamais par où commencer. Dans ce cours nous allons nous concentrer sur la maîtrise d’Octave et MATLAB, de façon à pouvoir par la suite continuer à apprendre de manière indépendante.

Self Paced
Self-Paced
HTML5 Apps and Games (edX) EdX
World Wide Web Consortium - W3C,W3Cx

HTML5 Apps and Games (edX)

Today, developers are increasingly moving from native to HTML5-based apps. Increase your ability to design and deliver innovative services on the Web! Want to learn advanced HTML5 tips and techniques? This is the course for you! Find out more about the powerful Web features that will help you create great content and apps.

Self Paced
Self-Paced
SQL for Data Science (edX) EdX
IBM

SQL for Data Science (edX)

Learn how to use and apply the powerful language of SQL to better communicate and extract data from databases - a must for anyone working in the data science field. Much of the world's data lives in databases. SQL (or Structured Query Language) is a powerful programming language that is used for communicating with and extracting various data types from databases.

Self Paced
Self-Paced
Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Fundamental Data Structures and Algorithms (edX)

Learn to enhance your code by using fundamental data structures and powerful algorithms in Java. In this introductory course, you will learn programming with Java in an easy and interactive way. You will learn about fundamental data structures, such as lists, stacks, queues and trees, and presents algorithms for inserting, deleting, searching and sorting information on these data structures in an efficient way.

Self Paced
Self-Paced
Laboratorio di Programmazione (edX) EdX
University of Naples Federico II,FedericaX

Laboratorio di Programmazione (edX)

Impara a risolvere problemi complessi attraverso l'uso del computer e avvicinati alla magia degli algoritmi. Il linguaggio di programmazione è uno degli strumenti che abbiamo per interpretare e risolvere i problemi di tutti i giorni. Un linguaggio che è alla base di problemi comuni, come le previsioni del tempo o l'analisi della deformazione di una struttura di un'auto in un incidente stradale.

Self Paced
Self-Paced
JavaScript Introduction (edX) EdX
World Wide Web Consortium - W3C,W3Cx

JavaScript Introduction (edX)

Learn JavaScript, a Web development programming language, to add interactivity to your Web pages, and become an expert Web developer. This computer science course is an initiation to JavaScript programming and has been designed to help Web developers have an understanding of the basic concepts of the language. This course was developed in partnership between W3C and University Côte d'Azur.

Self Paced
Self-Paced
Introduction to the Internet of Things (edX) EdX
Universitat Politècnica de València,UPValenciaX

Introduction to the Internet of Things (edX)

This is a preliminary course in which we deal with the basics of electronics and programming using Arduino and ESP boards. Internet of Things (IoT) is the present and the future of technology. Either, if you have none, few or some experience with electronics and you want to develop it projects this course will give you the necessary kick start to start creating amazing devices capable of sensing, controlling physical signals.

Self Paced
Self-Paced
Advanced Linear Algebra: Foundations to Frontiers (edX) EdX
University of Texas at Austin,UTAustinX

Advanced Linear Algebra: Foundations to Frontiers (edX)

Learn advanced linear algebra for computing. Linear algebra is one of the fundamental tools for computational and data scientists. In Advanced Linear Algebra: Foundations to Frontiers (ALAFF), you will build your knowledge, understanding, and skills in linear algebra, practical algorithms for matrix computations, and the analysis of the effects of floating-point arithmetic as performed by computers.

Self Paced
Self-Paced
How to Code: Complex Data (edX) EdX
The University of British Columbia,UBCx

How to Code: Complex Data (edX)

Learn how to design more complex programs, using new data structures, abstraction, and generative recursion. As your program requirements get more complex, you will find that simple additions to the design method make it easy to write well-structured and well-tested code that is easy to maintain. By learning how to capture common data and control structures using abstraction, your programs will get shorter and better tested.

Self Paced
Self-Paced