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

University of Michigan

Python Data Structures

University of Michigan via Coursera


This course will introduce the core data structures of the Python programming language. We will move past the basics of procedural programming and explore how we can use the Python built-in data structures such as lists, dictionaries, and tuples to perform increasingly complex data analysis. This course will cover Chapters 6-10 of the textbook “Python for Everybody”. This course covers Python 3.


  • Chapter Six: Strings
    • In this class, we pick up where we left off in the previous class, starting in Chapter 6 of the textbook and covering Strings and moving into data structures. The second week of this class is dedicated to getting Python installed if you want to actually run the applications on your desktop or laptop. If you choose not to install Python, you can just skip to the third week and get a head start.
  • Unit: Installing and Using Python
    • In this module you will set things up so you can write Python programs. We do not require installation of Python for this class. You can write and test Python programs in the browser using the "Python Code Playground" in this lesson. Please read the "Using Python in this Class" material for details.
  • Chapter Seven: Files
    • Up to now, we have been working with data that is read from the user or data in constants. But real programs process much larger amounts of data by reading and writing files on the secondary storage on your computer. In this chapter we start to write our first programs that read, scan, and process real data.
  • Chapter Eight: Lists
    • As we want to solve more complex problems in Python, we need more powerful variables. Up to now we have been using simple variables to store numbers or strings where we have a single value in a variable. Starting with lists we will store many values in a single variable using an indexing scheme to store, organize, and retrieve different values from within a single variable. We call these multi-valued variables "collections" or "data structures".
  • Chapter Nine: Dictionaries
    • The Python dictionary is one of its most powerful data structures. Instead of representing values in a linear list, dictionaries store data as key / value pairs. Using key / value pairs gives us a simple in-memory "database" in a single Python variable.
  • Chapter Ten: Tuples
    • Tuples are our third and final basic Python data structure. Tuples are a simple version of lists. We often use tuples in conjunction with dictionaries to accomplish multi-step tasks like sorting or looping through all of the data in a dictionary.
  • Graduation
    • To celebrate your making it to the halfway point in our Python for Everybody Specialization, we welcome you to attend our online graduation ceremony. It is not very long, and it features a Commencement speaker and very short commencement speech.

Taught by

Charles Severance



4.9 rating, based on 14,472 Class Central reviews

4.9 rating at Coursera based on 91320 ratings

Start your review of Python Data Structures

  • Anonymous

    Anonymous completed this course.

    So, nobody likes to read negative reviews on things that have a generally "high opinion" of. Certainly I am not the most educated either and as such I do take that in to consideration while writing this (I have no formal degrees). But I did want to share...
  • Anonymous

    Anonymous completed this course.

    Let's be realistic with yourself in finding and completing a MOOC. There are probably less than 10 courses on this subject that are worth taking because it has all the material you are looking to use in your job. However, there are fewer still that not...
  • Anonymous

    Anonymous completed this course.

    So, nobody likes to read negative reviews on things that have a generally "high opinion" of. Certainly I am not the most educated either and as such I do take that in to consideration while writing this (I have no formal degrees). But I did want to share...
  • Brandt Pence

    Brandt Pence completed this course, spending 2 hours a week on it and found the course difficulty to be very easy.

    This is the second course in the Python for Everybody specialization, and corresponds to the second half of the previous course of the same name. As with the first course (Getting Started with Python), I found Dr. Chuck's thorough approach to the material...
  • Anonymous
    Let me start off by saying I'm grading Dr. Chuck on a pedagogical level, not on him as a person. As a person on camera, he's charming, speaks a great pace that isn't too fast, and repeats himself often to try to drive the points home. He makes great eye...
  • Anonymous
    Anonymous completed this course. So, nobody likes to read negative reviews on things that have a generally "high opinion" of. Certainly I am not the most educated either and as such I do take that in to consideration while writing this (I have no formal...
  • This is the second course I took with Dr. Chuck. The best word to describe both the course and the instructor is "fantastic".
    As a begginer in this programming world I can say this course have tauhgt me not only thecnical aspects about python data structures and programming logic but also has encouraged me to keep learning.
    Im very happy with my progress throught the course.
    The only suggestion I would make is to have more hands-on and practice exercices, that would be really great to master the skills you learn.
  • Great course! The videos are astonishing

    I loved the approach!

    I can't wait to do another course!
  • Anonymous
    I invested two weeks of my life into this highly educative and exciting course on Python. I started with so much interest to delve into tech, and I spoke to a couple of persons and tech friends. Everyone kept talking about Python. I looked online and...
  • Anonymous
    i was really glad to find a course that taught the things that were somehow skipped over in all the other courses ive looked at. my girlfriend has taken a crash course as well but somehow did not even learn about the basic structure and logic of loops...
  • Anonymous

    Anonymous completed this course.

    Dr. Chuck is great and I really wanted to give this course four stars but I felt that with the content's importance (lists, dictionaries, tuples, et al) as part of the fundamental foundations of programming going forward (along with algorithms via the...
  • Thanks a lot for this enriching course it's been a great learning experience. The course is really made for anyone from any background just like the name implies. The explanation is very simplified yet adequate and very appealing cause of Dr. Chuck's tutoring style and the well presented presentations and content. I certainly recommend this MOOC for anyone looking to get into programming as there's a lot to learn and implement and all that's required is to know the basics of python programming which can be easily learned in the first course in the specialization.
  • I really like dr. Chuck!

    A very joyful and logical introduction into the python world.

    I have been working in software development for many years but never pushed myself towards python.

    I find it to be a very elegant language. simple, but with all the possibilities.

    I really like the way the courses are presented. I do the work and enjoy it, and that is rare for me.

    I especially like the extra material in the course.

    Thanks for this. a real enrichment for my life.
  • So I've completed this course, I can tell you it is quite a nice intro course - I am new to Python or other programming languages - for me it was good to start with. I also want to say - I need more practice - it helps to remember and understand information! so I read one more book (in my native language), but also I want to find some exercises to review my knowledge, because there are few exercises in the course.
  • Ilke Guntan
    Perfect course for beginners. Dr. Severance takes his time to explain every concept for people with no background for any programming languages. It has assignments and quizzes to check your understanding. Though, I wish there would be more exercises. They don't need to be graded but for to involve yourself with more coding, to broaden your perspective. Of course, after you took this course, you'll probably not going to be most wanted man in programming world. But, it provides well-structured starting point. You'll have a sound base where you can build upon.
  • I’ m a seasoned Systems and cloud solution provider , as well as a business owner of an Reputable IT firm (Domitek). I always wanted to learn Python and through this course I’ve walked away with a good understanding of data structure and manipulation, which will help me implement new solutions for our clients.

    Dr. Chuck is a great teacher and I would love continue my programming learning path with Dr. chuck. Great course with a long lasting and rewarding experience.

    Libis Bueno
  • Anonymous
    This is the second course in the specialization "Python for Everybody Specialization" and it picks up from where you left off in the first course (basically, this course finishes teaching the basics). Here is where I personally started to flounder in...
  • Mutairu Ajibade completed this course, spending 15 hours a week on it and found the course difficulty to be medium.

    This is the second course in the python for everybody specialization. I must say, it's been an interesting moment from course 1 to 2 and I intend to go all the way to next one. The areas covered include: Lists, Tuples, Dictionaries and they were touched...
  • I enjoyed this course so much (part 1 and 2), they are easy to follow along and way much engaging than other online courses. The only thing I would recommend is for you to know a little bit about the command line to better understand what Dr. Chuck is doing, just the basics: the "cd", "ls" commands etc. ¡Good luck!
  • I just did not learn a python lesson I got a life lesson. Thank you so much for it.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.