We may earn an affiliate commission when you visit our partners.
Course image
Charles Russell Severance

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.

Enroll now

What's inside

Syllabus

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.
Read more
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.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Taught by Charles Russell Severance, who is widely recognized for Python development and education
Teaches the foundational Python data structures to effectively perform data analysis
Provides step-by-step instruction on key concepts and practical applications
Covers real-world data analysis scenarios to enhance understanding and make the concepts relatable
Emphasizes the use of Python built-in data structures for efficient and effective data processing

Save this course

Save Python Data Structures to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Python Data Structures with these activities:
Organize Course Materials for Future Reference
Compile and organize course materials such as notes, assignments, and quizzes for easy access and future review.
Show steps
  • Create a dedicated folder or notebook for course materials.
  • Organize materials by topic or week.
  • Review materials periodically to reinforce learning.
Participate in Peer Coding Sessions
Engage in peer coding sessions to collaborate, share knowledge, and collectively solve programming challenges.
Show steps
  • Join or create a peer coding group or forum.
  • Participate in discussions and ask questions on specific coding topics.
  • Collaborate on coding projects and provide feedback to peers.
Delve into Python File Handling Operations
Follow guided tutorials to grasp the fundamentals and advanced techniques of file handling operations in Python.
Browse courses on Files
Show steps
  • Study tutorials on file open, read, write, and close operations.
  • Practice working with text and binary files.
  • Explore techniques for handling large files and optimizing file operations.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Practice with Lists and Dictionaries Data Structures
Practice working with lists and dictionaries data structures to solidify understanding of their usage and implementation.
Browse courses on Lists
Show steps
  • Create a list of strings and perform operations like indexing, slicing, and concatenation.
  • Create a dictionary of key-value pairs and perform operations like accessing, adding, and deleting elements.
  • Solve programming problems that involve manipulating lists and dictionaries.
Explore Advanced String Manipulation Techniques
Follow guided tutorials to enhance understanding of advanced string manipulation techniques and their applications.
Browse courses on Strings
Show steps
  • Study tutorials on regular expressions and their use in string matching and processing.
  • Practice using string formatting methods to create complex and dynamic strings.
  • Explore advanced string algorithms and their implementation in Python.
Develop a Python Script for Data Visualization
Create a Python script that utilizes libraries like Matplotlib or Seaborn to visualize data and enhance understanding of data patterns and trends.
Browse courses on Data Visualization
Show steps
  • Choose a dataset and gather necessary data.
  • Write a Python script using Matplotlib or Seaborn to create visualizations like bar charts, line graphs, or scatter plots.
  • Customize the visualizations by adjusting axis labels, colors, and styles.
  • Interpret the visualizations and draw insights from the data.
Read 'Python for Data Analysis'
Review a comprehensive book on Python for data analysis to gain a deeper understanding of data manipulation and analysis techniques.
Show steps
  • Read chapters related to data structures, file handling, and data analysis.
  • Work through the practice exercises and examples provided in the book.
  • Apply the concepts learned to real-world data analysis projects.

Career center

Learners who complete Python Data Structures will develop knowledge and skills that may be useful to these careers:
Data Analyst
Data Analysts evaluate and interpret data, and make insights and recommendations. With the aid of tools like Python, they help prevent issues, identify trends, and develop new products and services. This course can help build a foundation in Python for working with data structures, a core aspect of Data Analysis.
Data Scientist
Data Scientists gather and analyze data to identify meaningful insights and trends. Proficiency in Python is helpful because many of the tools used in Data Science, such as NumPy and Pandas, operate within the Python ecosystem. This course helps build a foundation in core Python data structures in support of this work.
Machine Learning Engineer
Machine Learning Engineers develop and maintain machine learning models. The use of Python in Machine Learning is very widespread, and thus a strong command of Python's data structures is necessary.
Data Engineer
Data Engineers build, maintain, and improve data pipelines. Familiarity with Python's data structures is very important, as Data Engineers use them to build a wide variety of data pipelines.
Software Engineer
Software Engineers design, build, and improve software solutions. Proficient knowledge of Python and its data structures is required, as it is one of the most popular and in-demand programming languages used by companies today. This course provides practical experience working with Python's core data structures.
Web Developer
Web Developers build and maintain websites and web applications. Python is commonly used for web development, particularly for backend development. Familiarity with Python's data structures is fundamental for this role.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical modeling to analyze risk and make investment decisions. Proficient knowledge of Python and its data structures is a requirement for this role, as Python is widely used in the finance industry.
Business Analyst
Business Analysts help businesses understand their data and make better decisions. Business Analysts use a variety of tools and techniques, including Python, to analyze data and identify trends. This course can help build a foundation in Python and its data structures, which are essential for the role.
Product Manager
Product Managers are responsible for the development and launch of new products. They work with engineers, designers, and marketers to bring products to market. Familiarity with Python and its data structures may be helpful for organizing and analyzing product data.
Software Tester
Software Testers test software to ensure that it meets requirements and is free of defects. Familiarity with Python and its data structures may be helpful for developing and executing test cases.
Database Administrator
Database Administrators manage and maintain databases. Familiarity with Python and its data structures may be helpful for optimizing database performance and managing data.
Information Security Analyst
Information Security Analysts protect computer systems and networks from cyber attacks. Familiarity with Python and its data structures may be helpful for developing and implementing security solutions.
Technical Writer
Technical Writers create documentation for software and other technical products. Familiarity with Python and its data structures may be helpful for understanding the products being documented.
IT Support Specialist
IT Support Specialists provide technical support to users of computers and networks. Familiarity with Python and its data structures may be helpful for troubleshooting technical issues.
Computer Programmer
Computer Programmers write and maintain computer programs. Familiarity with Python and its data structures is essential for this role.

Reading list

We've selected 25 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Python Data Structures.
This is the required textbook for the course. The course covers chapters 6-10 of the book.
This comprehensive textbook covers a wide range of data structures and algorithms in Python, making it a valuable resource for learners looking to deepen their understanding of these topics.
Would serve as a good background read as it covers not only data structures but also algorithms, which could provide a deeper understanding of the topics covered in this course.
While this book is more focused on algorithms than data structures, it provides a solid foundation for understanding the concepts behind the data structures covered in this course.
Provides a more accessible and engaging approach to learning algorithms, making it a good choice for learners who want a less technical introduction.
Goes in-depth into computer science as a whole, including data structures.
In-depth exploration of Python. Useful as a reference when reviewing topics from the course.
Serves as a solid reference text.
Provides a comprehensive introduction to data structures and algorithms in Python. It covers a wide range of topics, including lists, dictionaries, sets, stacks, queues, trees, and graphs.
Provides a comprehensive introduction to data structures and algorithms in Java. It covers a wide range of topics, including lists, dictionaries, sets, stacks, queues, trees, and graphs.
Provides a comprehensive introduction to data structures and algorithms in Java. It covers a wide range of topics, including lists, dictionaries, sets, stacks, queues, trees, and graphs.
Provides a comprehensive introduction to data structures and algorithms in C++. It covers a wide range of topics, including lists, dictionaries, sets, stacks, queues, trees, and graphs.
Provides a comprehensive introduction to algorithms, covering a wide range of topics, including sorting, searching, graph algorithms, and dynamic programming.
Comprehensive reference for Python programming.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser