We may earn an affiliate commission when you visit our partners.
Course image
Paul Resnick and Steve Oney

This course introduces the dictionary data structure and user-defined functions. You’ll learn about local and global variables, optional and keyword parameter-passing, named functions and lambda expressions. You’ll also learn about Python’s sorted function and how to control the order in which it sorts by passing in another function as an input. For your final project, you’ll read in simulated social media data from a file, compute sentiment scores, and write out .csv files. It covers chapters 10-16 of the textbook “Fundamentals of Python Programming,” which is the accompanying text (optional and free) for this course.

Read more

This course introduces the dictionary data structure and user-defined functions. You’ll learn about local and global variables, optional and keyword parameter-passing, named functions and lambda expressions. You’ll also learn about Python’s sorted function and how to control the order in which it sorts by passing in another function as an input. For your final project, you’ll read in simulated social media data from a file, compute sentiment scores, and write out .csv files. It covers chapters 10-16 of the textbook “Fundamentals of Python Programming,” which is the accompanying text (optional and free) for this course.

The course is well-suited for you if you have already taken the "Python Basics" course and want to gain further fundamental knowledge of the Python language. Together, both courses are geared towards newcomers to Python programming, those who need a refresher on Python basics, or those who may have had some exposure to Python programming but want a more in-depth exposition and vocabulary for describing and reasoning about programs.

This is a follow-up to the "Python Basics" course (course 1 of the Python 3 Programming Specialization), and it is the second of five courses in the specialization.

Enroll now

What's inside

Syllabus

Files and CSV Output
In week one the video lectures and the Runestone textbook will introduce you to the idea of incorporating files into your programs as an additional source of data. You will learn how to read from a file, write to a file, and how to work with the .csv data format.
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Develops foundational knowledge of Python, beneficial for those starting their journey in Python programming
Covers core concepts such as variables, data types, and functions in Python, suitable for learning the language's basics
Progresses from beginner-level topics to advanced concepts, catering to a diverse audience of Python learners
Instructed by experienced professionals in the field, known for their expertise in Python programming
Provides various assessment opportunities, including interactive exercises and a final project, to reinforce learning
Covers the fundamentals of working with files and CSV data in Python

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Builds python functions and files skills

According to learners, this course is a solid and useful next step after Python Basics, effectively introducing key concepts like dictionaries, functions, and file handling. Students highlight the clear explanations and hands-on assignments as particularly helpful for understanding the material. The course is often described as having a good pace for beginners, providing a strong foundation. While the majority sentiment is positive, some students note that certain assignments or quizzes can be challenging and occasionally feel disconnected from the lectures, requiring some independent problem-solving or reliance on the provided textbook or external resources.
Textbook or outside help may be necessary.
"Some parts of the textbook were more helpful than the videos."
"Relying solely on [videos] might not be enough for some. The textbook is a necessary supplement."
"Needed external resources to complete the tasks."
Appropriate speed for novice programmers.
"The course moves at a good pace..."
"Perfect pace for a beginner."
"The progression felt logical and the concepts were explained clearly."
Builds well on the first course.
"Excellent course! Builds perfectly on the basics."
"Fantastic follow-up to course 1."
"Solid introduction to the topics [after basics]."
Content is well-explained for beginners.
"The course material is clear and well-explained..."
"Concepts were explained clearly and logically."
"Instructor explains complicated concepts clearly."
"The explanations were clear and easy to follow."
"Everything was explained simply yet thoroughly."
Hands-on exercises help solidify learning.
"...and the assignments help reinforce the concepts well."
"The programming assignments solidify the learning."
"The hands-on coding and projects are the strongest part of the course for me."
"The labs reinforced the concepts effectively."
"Good practical exercises."
Some exercises are difficult or unclear.
"...some quizzes and programming assignments felt a bit disconnected from the lectures."
"Content is okay, but the assignments could be clearer."
"Struggled with the assignments. The jump from the basic concepts to the project felt too big."
"Assignments are sometimes frustratingly vague."
"Needed external resources to complete the tasks."

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 Functions, Files, and Dictionaries with these activities:
Solve Python coding challenges on LeetCode
Practice solving Python coding problems to improve your problem-solving and coding skills.
Show steps
  • Create a LeetCode account and select the Python language
  • Start solving easy-level problems and gradually move on to more difficult ones
Contribute to a Python open-source project on GitHub
Gain practical experience and contribute to the Python community by working on open-source projects.
Browse courses on GitHub
Show steps
  • Find a Python open-source project on GitHub that aligns with your interests
  • Identify a bug or feature you can contribute to
  • Fork the project, make your changes, and submit a pull request
Show all two activities

Career center

Learners who complete Python Functions, Files, and Dictionaries will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists use their knowledge of statistics, programming, and machine learning to build models that can predict outcomes and make recommendations. This course would be helpful for Data Scientists because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Machine Learning Engineer
Machine Learning Engineers build and maintain machine learning models that can learn from data and make predictions. This course would be helpful for Machine Learning Engineers because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Web Developer
Web Developers design and develop websites and web applications. This course would be helpful for Web Developers because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Database Administrator
Database Administrators design, implement, and maintain databases. This course would be helpful for Database Administrators because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Business Analyst
Business Analysts use data to help businesses understand their operations and make better decisions. This course would be helpful for Business Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Market Researcher
Market Researchers collect and analyze data to understand consumer behavior and market trends. This course would be helpful for Market Researchers because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Financial Analyst
Financial Analysts use data to evaluate the financial performance of companies and make investment recommendations. This course would be helpful for Financial Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Actuary
Actuaries use data to assess risk and uncertainty. This course would be helpful for Actuaries because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Statistician
Statisticians use data to design experiments, analyze results, and draw conclusions. This course would be helpful for Statisticians because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Operations Research Analyst
Operations Research Analysts use data to solve complex problems in business and industry. This course would be helpful for Operations Research Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Quantitative Analyst
Quantitative Analysts use data to develop and implement financial models. This course would be helpful for Quantitative Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Data Analyst
Data Analysts collect, clean, and analyze data to help businesses make informed decisions. This course would be helpful for Data Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course would be helpful for Software Engineers because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Data Engineer
Data Engineers design and build systems for storing and processing data. This course may be useful for Data Engineers because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.
Information Security Analyst
Information Security Analysts protect computer systems and networks from attack. This course may be useful for Information Security Analysts because it teaches how to read and write data from files, use dictionaries to store and organize data, define and use functions to perform complex operations, and sort data to identify patterns and trends.

Reading list

We've selected 13 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 Functions, Files, and Dictionaries.

Share

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

Similar courses

Similar courses are unavailable at this time. Please try again later.
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 - 2025 OpenCourser