Introduction to Python Programming (Coursera)

Introduction to Python Programming (Coursera)

This course provides an introduction to programming and the Python language. Students are introduced to core programming concepts like data structures, conditionals, loops, variables, and functions. This course includes an overview of the various tools available for writing and running Python, and gets students coding quickly. It also provides hands-on coding exercises using commonly used data structures, writing custom functions, and reading and writing to files.

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

This course may be more robust than some other introductory python courses, as it delves deeper into certain essential programming topics.
What You Will Learn

  • Identify core aspects of programming and features of the Python language
  • Understand and apply core programming concepts like data structures, conditionals, loops, variables, and functions
  • Use different tools for writing and running Python code
  • Design and write fully-functional Python programs using commonly used data structures, custom functions, and reading and writing to files

Prerequisites: minimal prior programming exposure may be helpful but not needed (e.g.Computational Thinking for Problem Solving)
Course 1 of 4 in the Introduction to Programming with Python and Java Specialization

Syllabus

WEEK 1
Course Introduction, Intro to Programming and The Python Language, Variables, Conditionals, Jupyter Notebook, and IDLE
This first module covers an intro to programming and the Python language.
We’ll start by downloading and installing the necessary tools to begin programming and writing code in Python. After learning how to print to the console, we’ll get an understanding of Python’s basic data types, and how to do simple math. We’ll follow up by creating our first Python script, and learn how to define and assign variables, while controlling the flow of our program using conditionals. We’ll also learn how to get input from the user, including some very basic error checking. Let’s get started!

WEEK 2
Intro to Lists, Loops, and Functions
We’ll start this module with a brief intro to lists, one of Python’s most commonly used data structures. We’ll learn just enough to get us started with loops, which are used to repeat a process or run a block of code multiple times. We’ll get into functions, which are blocks of organized code used to perform a single, related action. We’ll review some of Python’s built-in functions and learn how to design our own user-defined functions to use as building blocks in our own programs. Along the way, we’ll learn best practices for documenting our code for 2 different audiences: The users who are using our code and want to understand it at a high level, and the programmers who are reading it and want to know how it works.

WEEK 3
More with Lists, Strings, Tuples, Sets, and PyCharm
In this module, we’re going to start using PyCharm, another IDE for writing and running Python code. It has enhanced features that go way beyond the limited functionality of IDLE, and it’s also an industry standard. After revisiting lists, including more advanced usage of the commonly used sequence, we’ll take a deep dive into two other very important data structures : sets and tuples. We’ll learn how they can be leveraged to both store and manipulate information. And while we already have some experience working with strings, this module will explore the intricacies and more powerful functionality of strings.

WEEK 4
Dictionaries and Files
There are multiple ways of loading and storing data in Python. Information can be saved in dictionaries, a data structure that is extremely useful for storing multiple attributes (or data points) about a single thing. Data can also be stored in external files and then loaded into Python. This module will allow us to work with dictionaries in a variety of ways and to interact with the local file system by opening, reading from, and writing to, external files. With these added skills, you’ll begin to get a better sense of the dynamic power of Python and how it can be easily integrated with other systems.

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

Related Courses

Algorithms, Part I (Coursera) Coursera
Princeton University

Algorithms, Part I (Coursera)

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

Nov 16th 2026
5-12 Weeks
Code Yourself! An Introduction to Programming (Coursera) Coursera
University of Edinburgh,Universidad ORT Uruguay

Code Yourself! An Introduction to Programming (Coursera)

Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.

Nov 23rd 2026
5-12 Weeks
Network Systems Foundations (Coursera) Coursera
University of Colorado Boulder

Network Systems Foundations (Coursera)

Welcome! Throughout this course, Network Systems Foundations, you will delve into the fundamental layers of network communication. You will start with a thorough discussion of the Link Layer and its crucial role, moving on to the intricacies of Internet Protocol (IP) and router data planes, and then navigate through the complexities of the transport layer, application layer, and network security.

Nov 23rd 2026
5-12 Weeks
Programando con Java para aplicaciones Android (Coursera) Coursera
Universidad Nacional Autónoma de México

Programando con Java para aplicaciones Android (Coursera)

¡Aprende lo mejor de Java para el desarrollo en Android! Descubre lo necesario para construir tus aplicaciones móviles de una forma sencilla, objetiva y práctica. A lo largo del curso, verás diversos ejemplos para crear tu primer Hola Mundo y practicarás la programación orientada a objetos.

Nov 16th 2026
3 Weeks
Data Visualization with Python & R for Engineers (Coursera) Coursera
Northeastern University

Data Visualization with Python & R for Engineers (Coursera)

The primary objective of this course is to offer students an opportunity to learn how to use visualization tools and techniques for data exploration, knowledge discovery, data storytelling, and decision making in engineering, healthcare operations, manufacturing, and related applications. This course covers basics of data mining and visualization, and Python. It also introduces students to static visualization charts and techniques that reveal information, patterns, interactions.

Nov 23rd 2026
4 Weeks
Learn CSS Flexbox (Coursera) Coursera
Scrimba

Learn CSS Flexbox (Coursera)

Mastering CSS Flexbox: Unlock the Power of Flexible Web Layouts. Discover the indispensable art of CSS Flexbox and elevate your web development prowess to new heights. In this comprehensive course, you'll gain proficiency in harnessing the unparalleled capabilities of Flexbox, revolutionizing the way you construct websites.

Nov 23rd 2026
1 Week
Learn TypeScript (Coursera) Coursera
Scrimba

Learn TypeScript (Coursera)

Are you a proficient developer in HTML, CSS, and JavaScript, looking to elevate your technical skillset? Have you observed an increasing demand for TypeScript in the professional job market and are keen to explore its significance? Are you in search of a programming language that offers ease in readability and debugging? If the answer to any of these questions is affirmative, then you have arrived at the optimal course to advance your career.

Nov 23rd 2026
4 Weeks
Open Source Programming - Master's (Coursera) Coursera
Illinois Tech

Open Source Programming - Master's (Coursera)

Contemporary open-source programming languages and frameworks are presented in this course. Students will consider design and development topics in system, graphical user interface, network, and web programming. Dynamic scripting languages are covered using object-oriented, concurrent, and functional programming paradigms. Concepts gained throughout the course are reinforced with numerous exercises which will culminate in an open-source programming project.

Nov 23rd 2026
5-12 Weeks
Java程序设计 (Coursera) Coursera
Peking University

Java程序设计 (Coursera)

《Java程序设计》课程是使用Java语言进行应用程序设计的课程,针对各专业的大学本科生开设。课程的主要目标有三: 一、掌握Java语言的语法,能够较为深入理解Java语言机制,掌握Java语言面向对象的特点。 二、掌握JavaSE中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用。三、能够编写有一定规模的应用程序,养成良好的编程习惯,会使用重构、设计模式、单元测试、日志、质量管理工具提高代码的质量。 对于学过“计算机基础、计算概论或C语言的学生”尤为适用。

Nov 16th 2026
5-12 Weeks
Getting Started with CyberGIS (Coursera) Coursera
University of Illinois at Urbana-Champaign

Getting Started with CyberGIS (Coursera)

This course is intended to introduce students to CyberGIS—Geospatial Information Science and Systems (GIS)—based on advanced cyberinfrastructure as well as the state of the art in high-performance computing, big data, and cloud computing in the context of geospatial data science. Emphasis is placed on learning the cutting-edge advances of cyberGIS and its underlying geospatial data science principles.

Nov 23rd 2026
4 Weeks