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

Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Nov 23rd 2026
5-12 Weeks
Introduction and Programming with IoT Boards (Coursera) Coursera
Pohang University of Science and Technology - POSTECH

Introduction and Programming with IoT Boards (Coursera)

Internet of Things (IoT) is an emerging area of information and communications technology (ICT) involving many disciplines of computer science and engineering including sensors/actuators, communications networking, server platforms, data analytics and smart applications. IoT is considered to be an essential part of the 4th Industrial Revolution along with AI and Big Data. This course will be very useful to senior undergraduate and graduate students as well as engineers who are working in the industry.

Nov 23rd 2026
5-12 Weeks
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
The Unix Workbench (Coursera) Coursera
Johns Hopkins University

The Unix Workbench (Coursera)

Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench.

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

Open Source Programming - Bachelor'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
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
Practical Python for AI Coding 2 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Practical Python for AI Coding 2 (Coursera)

This course is for a complete novice of Python coding, so no prior knowledge or experience in software coding is required. This course selects, introduces and explains Python syntaxes, functions and libraries that were frequently used in AI coding. In addition, this course introduces vital syntaxes, and functions often used in AI coding and explains the complementary relationship among NumPy, Pandas and TensorFlow, so this course is helpful for even seasoned python users.

Nov 23rd 2026
5-12 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
Programming Mobile Applications for Android Handheld Systems: Part 1 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 1 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will develop an app from scratch, assuming a basic knowledge of Java, and learn how to set up Android Studio, work with various Activities and create simple user interfaces to make your apps run smoothly.

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