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

This course introduces the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures. You'll program an on-screen Turtle to draw pretty pictures. You'll also learn to draw reference diagrams as a way to reason about program executions, which will help to build up your debugging skills. The course has no prerequisites. It will cover Chapters 1-9 of the textbook "Fundamentals of Python Programming," which is the accompanying text (optional and free) for this course.

Read more

This course introduces the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures. You'll program an on-screen Turtle to draw pretty pictures. You'll also learn to draw reference diagrams as a way to reason about program executions, which will help to build up your debugging skills. The course has no prerequisites. It will cover Chapters 1-9 of the textbook "Fundamentals of Python Programming," which is the accompanying text (optional and free) for this course.

The course is for you if you're a newcomer to Python programming, if you need a refresher on Python basics, or if you 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 the first of five courses in the Python 3 Programming Specialization.

Enroll now

What's inside

Syllabus

General Introduction
In week one you will be introduced to programming in python through lectures and the Runestone textbook - an interactive online textbook built for this course. By the end of the module, you will have run your first python program, and learned how to draw images by writing a program.
Read more
Sequences and Iteration
In week two you will use the lectures and the Runestone textbook to understand the basics of a few python data types - lists, strings, tuples - as well as a control structure - for loops. By the end of this week, you will be able to write more complex programs that create drawings by incorporating for loops. Finally, we will present the basics of an accumulation pattern to you, which will be expanded on in each week for the rest of the course.
Booleans and Conditionals
In week three you will learn a new python data type - the boolean - as well as another control structure - conditional execution. Through the use of video lectures and the Runestone textbook, you will learn what Binary, Unary, Nested, and Chained Conditionals are, as well as how to incorporate conditionals within an accumulation pattern.
Sequence Mutation and Accumulation Patterns
In week four we will present deeper knowledge on using lists, strings, and python objects in general. We will also cover how to use the accumulation pattern with lists and with strings. The final assignment will test your knowledge and skills through application, much like previous assessments and assignments did, though with a more difficult set of tasks now that you have learned the basics.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Introduces essential concepts like conditional execution and iteration
Suitable for beginners seeking an introduction to Python programming
Develops foundational skills in Python for those with some prior exposure
Provides a solid foundation for subsequent courses in the Python 3 Programming Specialization
Leverages an interactive textbook and lecture videos for enhanced learning
Emphasizes debugging skills through the use of reference diagrams

Save this course

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

Reviews summary

Learnpythonbasics

Learners say this course provides engaging assignments and clear explanations with a solid structure that is beginner-friendly, but may be too basic and slow-paced for those with prior programming experience. The interactive textbook and Codelens feature are highly regarded for enhancing comprehension. However, there are occasional issues with errors in course materials and a lack of real-world project-based work for deeper understanding. Overall, students describe the course as an excellent option for beginners seeking a comprehensive foundation in Python fundamentals. With its well-organized content, helpful resources, and supportive instructors, it effectively prepares learners for further exploration of Python programming.
Engaging assignments and clear explanations with a solid structure that is beginner-friendly
"The explanations of the content, practice questions, assignments,etc are very much interesting and helpful to learn basics of Python 3.6. I thank the course instructors, tutors and coordinators for giving such a clear content."
"makes exercises and questions that can be answered by us. Thank you so much for this oppurrtunity."
"The course is truly Python for everyone. It is a very good starting point for a person who has no experience with Python. All of the materials, exercises and demonstration examples are prepared in a clear and comprehensive manner."
There are occasional issues with errors in course materials and a lack of real-world project-based work for deeper understanding.
"The teachings are excellent, it is a great basis for starting a career in programming. Furthermore, the professors are nice and make you feel part of their University. Go blue!"

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 Basics with these activities:
Review Python Syntax and Basics
Refreshing your knowledge of Python syntax and basics will help you get up to speed quickly and easily.
Browse courses on Python Syntax
Show steps
  • Review the official Python documentation.
  • Take an online quiz or practice test on Python syntax.
  • Write a simple Python program to test your understanding.
Read 'Automate the Boring Stuff with Python'
This book provides a comprehensive introduction to Python and will help you build a strong foundation in the language.
Show steps
  • Read through the book and make notes on important concepts.
  • Complete the exercises at the end of each chapter.
  • Apply what you've learned in the book to solve real-world problems.
Review Syntax and Data Structures
Python Syntax and basic data structures are essential to the core of the course.
Browse courses on Python Syntax
Show steps
  • Review the "Syntax and Basic Data Structures" section of the Runestone textbook
  • Complete the associated exercises in the Runestone textbook
Ten other activities
Expand to see all activities and additional details
Show all 13 activities
Create a Python Resource Collection
Creating a resource collection will help you organize and keep track of useful Python materials.
Show steps
  • Gather Python resources from online sources and books.
  • Organize the resources into categories, such as tutorials, references, and code examples.
  • Create a document or website to share your resource collection with others.
  • Update your resource collection regularly with new and relevant materials.
Explore Online Python Tutorials
External Python tutorials can provide additional practice and insights.
Show steps
  • Search for Python tutorials that cover specific topics or concepts covered in the course
  • Follow the tutorials and complete any associated exercises
Solve Practice Problems for Python Data Structures
Solving practice problems will reinforce your understanding of Python data structures and help you develop your problem-solving skills.
Browse courses on Lists
Show steps
  • Find a set of practice problems online or in a textbook.
  • Set aside a specific amount of time each week to work on the problems.
  • Break down each problem into smaller steps.
  • Implement a solution to the problem using Python.
  • Test your solution and debug any errors.
Practice Conditional Execution and Iteration
Applying Conditional Execution and Iteration is a critical skill in Python.
Browse courses on Conditional Execution
Show steps
  • Solve at least 10 practice problems on Conditional Execution and Iteration
Participate in a Study Group
Peer-assisted study groups can greatly improve learning outcomes.
Show steps
  • Join or start a peer study group
  • Regularly meet with the group to discuss course material and practice skills
Join a Python Study Group
Joining a study group will give you the opportunity to discuss course material with other students and get help with your assignments.
Show steps
  • Find a Python study group online or in your local area.
  • Attend study group meetings regularly.
  • Participate in discussions and ask questions.
  • Work on practice problems together.
  • Help other students with their work.
Create a Turtle Graphics Project
Turtle Graphics provides a visual representation of concepts covered in the course.
Browse courses on Turtle Graphics
Show steps
  • Design a simple Turtle Graphics project
  • Implement the project using Python
Create a Python Project Using Turtle Graphics
Creating a project in Python will help you apply the concepts you've learned in the course and develop your programming skills.
Browse courses on Turtle Graphics
Show steps
  • Choose a simple project idea, such as drawing a shape or creating an animation.
  • Plan out your project and create a design document.
  • Implement your project in Python using Turtle Graphics.
  • Test your project and make sure it works as expected.
  • Share your project with others and get feedback.
Participate in a Python Coding Competition
Participating in a coding competition will challenge you to solve complex problems and test your skills against other Python programmers.
Show steps
  • Find a Python coding competition online or in your local area.
  • Register for the competition.
  • Prepare for the competition by practicing your Python skills.
  • Compete in the competition and do your best to solve as many problems as possible.
  • Review your performance and learn from your mistakes.
Write a Python Program to Solve a Real-World Problem
Applying Python to real-world problems will help you develop your critical thinking and problem-solving skills and demonstrate your proficiency with the language.
Browse courses on Real-World Applications
Show steps
  • Identify a real-world problem that you can solve using Python.
  • Design and implement a Python program to solve the problem.
  • Test your program and make sure it works as expected.
  • Write a report or documentation that explains your solution and how it can be used to solve the problem.
  • Share your program with others and get feedback.

Career center

Learners who complete Python Basics will develop knowledge and skills that may be useful to these careers:
Data Scientist
Data Scientists use scientific methods and processes to extract knowledge from data and find actionable insights. This course helps prepare one to become a Data Scientist by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures. This course also introduces debugging skills.
Machine Learning Engineer
Machine Learning Engineers design and develop machine learning models to solve business problems. This course helps prepare one to become a Machine Learning Engineer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures. This course also introduces debugging skills.
Business Analyst
Business Analysts help businesses solve problems and make informed decisions. This course helps prepare one to become a Business Analyst by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Software Engineer
Software Engineers design, develop, and maintain software systems. This course helps prepare one to become a Software Engineer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Data Analyst
Data Analysts find and investigate patterns in data. They use various analytic techniques to help businesses make more informed decisions. This course helps prepare one to become a Data Analyst by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Web Developer
Web Developers design and develop websites and web applications. This course helps prepare one to become a Web Developer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Full-Stack Developer
Full-Stack Developers design and develop both the front-end and back-end of websites and applications. This course helps prepare one to become a Full-Stack Developer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Product Manager
Product Managers are responsible for the planning, development, and launch of new products. This course helps prepare one to become a Product Manager by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Data Engineer
Data Engineers design and build systems to collect, store, and process data. This course helps prepare one to become a Data Engineer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Quantitative Analyst
Quantitative Analysts use mathematical and statistical models to analyze data and make investment decisions. This course helps prepare one to become a Quantitative Analyst by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
DevOps Engineer
DevOps Engineers bridge the gap between development and operations teams. This course helps prepare one to become a DevOps Engineer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
UX Designer
UX Designers design the user experience for websites and applications. This course helps prepare one to become a UX Designer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Front-End Developer
Front-End Developers design and develop the front-end of websites and applications. This course helps prepare one to become a Front-End Developer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
Back-End Developer
Back-End Developers design and develop the back-end of websites and applications. This course helps prepare one to become a Back-End Developer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.
UI Designer
UI Designers design the user interface for websites and applications. This course helps prepare one to become a UI Designer by teaching the basics of Python 3, including conditional execution and iteration as control structures, and strings and lists as data structures.

Reading list

We've selected ten 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 Basics.
Focuses on the fundamentals of Python. Suitable for both beginners and experienced programmers, the book will help you deepen your understanding of programming concepts. It covers topics such as data structures, algorithms, object-oriented programming, and functional programming.
Provides a comprehensive introduction to Python and computer science. It great resource for students who are new to programming or who want to learn more about Python.
Comprehensive reference guide to Python. It great resource for experienced Python programmers who want to quickly find information about the language.
Provides a deep dive into the Python programming language. It great resource for experienced Python programmers who want to learn more about the language and its features.
Comprehensive reference guide to Python. It great resource for experienced Python programmers who want to quickly find information about the language.
Provides an introduction to Python for data analysis. It great resource for students who want to learn how to use Python to analyze data.
Provides an introduction to machine learning using Python. It great resource for students who want to learn how to use Python to build machine learning models.
Provides an introduction to Python for finance. It great resource for students who want to learn how to use Python to analyze financial data.

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