We may earn an affiliate commission when you visit our partners.
Christian Koch

Learn the world's most popular programming language by making 10 apps.

This course includes an incredibly comprehensive, yet easy to follow, introduction to Python and uses that knowledge to create 10 sophisticated apps using tkinter. By the time you finish these projects you will have a strong understanding of Python and of coding in general. You will also have amazing projects for your portfolio.

Read more

Learn the world's most popular programming language by making 10 apps.

This course includes an incredibly comprehensive, yet easy to follow, introduction to Python and uses that knowledge to create 10 sophisticated apps using tkinter. By the time you finish these projects you will have a strong understanding of Python and of coding in general. You will also have amazing projects for your portfolio.

The course contains over 150 videos and includes a huge amount of exercises so you can practice while you code along. You can also find the code for every video attach in the course. The course will start completely from scratch and I will begin by installing Python on Windows or MacOS; or you can use an online code editor.

This course is going to cover every topic of Python, for example:

  • All of the datatypes (integers, strings, floats, booleans, lists, tuples, dictionaries etc)

  • You will learn classes and object-oriented programming

  • Inheritance, both simple and complex will be covered in detail

  • You will learn how to control the flow of the code using if, while, for and match

  • You will learn about functions and how to pass information around

  • There are many sections on scope to keep your code organized

  • Decorators will be covered in depth

  • File handling will be used

Using that knowledge, you will learn how to create:

  • a responsive weather app

  • the ios Stopwatch and Calculator

  • a paint app

  • a stock market tracker

  • a maps viewer

  • a bmi app

  • a snake game

  • an image editor

  • a qr code generator

Python is one of the most desirable features on the job market and can get you into well-paying and interesting jobs. It is also a very easy to learn language that you can use as a starting point in your coding career. I am looking forward to seeing you in the course.  

Enroll now

What's inside

Learning objectives

  • Master python and graphical user interfaces
  • Learn how to create any kind of style and layout to make your own apps
  • Master the design of large projects
  • Create 10 tkinter apps including games
  • Request information from the internet (stock, weather and geo information)
  • You will develop a thorough understanding of python

Syllabus

Introduction
Trailer
Installing Python
Installing a code editor (Sublime)
Read more
Python basics
How code is executed
Math operators
Variables
Functions
Methods
Return values
Comments
More on the order of execution
Datatypes
Intro
Numbers
Strings
Lists and tuples
Slicing
Unpacking
Strings, tuples and lists
Dictionaries
Sets
Booleans
Other data
Flow
More on parameters
Simple if statements
Complex if statements
Match case
While loops
For loops
Flow and linebreak
Parameters
Scope
Lambda functions
Documenting functions
Working with data
intro
Better for loops
List comprehension
Other comprehensions
Sorting data
Map and Filter
File Handling
Deleting data
Classes
Classes in practice
Dunder methods
Classes and methods
Simple inheritance
Complex inheritance
Extra
Modules
External modules
Creating modules
Dunder main
Additional topics
Intro (Pass & input)
Exceptions
Eval & Exec
Decorators
Overview of tkinter
Creating an overview app
Tkinter basics
1 Window and the widgets
Settings and getting data
Tkinter variables
Buttons
Buttons with arguments
Events
Dropdown menus
Canvas
Tables
Slider
Frame parenting
Tabs
Menus
Working with windows
Layouts
Layout overview
Pack
Pack parenting
Grid
Place
Sizes
Stacking widgets
Toggling widgets
Combining layouts
Using classes
Creating custom widgets with return
Responsive layouts
Scrolling
Creating a scrollable frame

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Starts with installing Python and a code editor, making it accessible for individuals with little to no prior coding experience
Covers all Python datatypes, control flow, functions, and object-oriented programming, providing a comprehensive foundation in Python
Teaches tkinter, a standard GUI library, which allows learners to build desktop applications with Python
Includes file handling, which is essential for reading and writing data to files, a common task in software development
Uses Sublime as the code editor, which may require learners to purchase a license after the trial period
Focuses on creating 10 apps, which provides hands-on experience and practical application of the concepts learned

Save this course

Save Learn Python by creating 10 apps with tkinter 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 Learn Python by creating 10 apps with tkinter with these activities:
Review Python Basics
Solidify your understanding of Python fundamentals before diving into app development. This will make the course material easier to grasp.
Browse courses on Python Basics
Show steps
  • Review data types, operators, and control flow in Python.
  • Practice writing simple Python scripts.
  • Complete online Python tutorials or exercises.
Review 'Python Crash Course'
Reinforce your Python knowledge with a comprehensive guide. This book offers practical examples and projects to solidify your understanding.
Show steps
  • Read the first few chapters covering Python basics.
  • Work through the example code and exercises.
  • Focus on topics like data structures, functions, and classes.
Tkinter Layout Practice
Master Tkinter layout managers (pack, grid, place) through focused exercises. This will improve your ability to design app interfaces effectively.
Show steps
  • Create simple layouts using pack, grid, and place.
  • Experiment with different options and configurations.
  • Replicate existing layouts from app screenshots.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Simple GUI Calculator
Build a basic calculator application using Tkinter. This project will help you apply your knowledge of widgets, layouts, and event handling.
Show steps
  • Design the calculator interface with buttons and a display.
  • Implement the arithmetic operations.
  • Handle button clicks and update the display.
  • Add error handling for invalid inputs.
Tkinter Widget Showcase
Create a short video demonstrating the use of various Tkinter widgets. This will reinforce your understanding of their properties and functionalities.
Show steps
  • Choose a selection of Tkinter widgets to showcase.
  • Create a simple application demonstrating each widget.
  • Record a video explaining the widget's purpose and usage.
  • Edit the video and add annotations or captions.
Contribute to a Tkinter Project
Contribute to an open-source Tkinter project on GitHub. This will provide valuable experience working with real-world code and collaborating with other developers.
Show steps
  • Find an open-source Tkinter project on GitHub.
  • Identify a bug or feature to work on.
  • Fork the repository and create a branch for your changes.
  • Implement the fix or feature and submit a pull request.
Portfolio App Showcase
Create a presentation showcasing the apps you built during the course. This will help you solidify your understanding and demonstrate your skills to potential employers.
Show steps
  • Select 2-3 apps from the course to showcase.
  • Prepare a presentation highlighting the features and design.
  • Practice your presentation and get feedback.
  • Record a video of your presentation or present it live.

Career center

Learners who complete Learn Python by creating 10 apps with tkinter will develop knowledge and skills that may be useful to these careers:
Python Developer
A Python developer specializes in using Python to build various types of applications. This course provides a comprehensive introduction to Python, and is perfect for anyone looking to become a Python developer. The course begins with the fundamentals of Python, and progresses to object-oriented concepts, control flow, and data manipulation. You will build ten apps using tkinter, developing your skills and creating a portfolio to showcase your work as a Python developer. The course covers all the data types, and teaches you how to build features, such as a stock market tracker and a weather app.
Software Developer
A software developer designs, develops, and tests software applications. This Python course helps build a strong foundation for aspiring software developers by providing a comprehensive introduction to the language, including its syntax, data structures, and object-oriented programming. A software developer will find this course incredibly useful for learning to create sophisticated apps using tkinter, mastering the design of large projects, and developing a thorough understanding of Python. The course teaches important coding practices, and includes exercises, such as building responsive weather apps, stock market trackers, and games, that you will need as a software developer.
Applications Developer
An application developer creates and maintains software applications for various platforms. This course provides a solid base in Python, a core language for application development. You will learn to use tkinter to create graphical user interfaces while building ten apps. An applications developer requires a deep understanding of data structures, control flow, user interfaces, and object-oriented design, and this course will get you there as you work through the exercises. The course teaches you how to build a variety of applications, including a stock market tracker and a QR code generator, all of which are essential learning experiences for an applications developer.
Software Engineer
Software engineers are involved in the entire lifecycle of software development, from design to deployment. This course helps anyone looking to be a software engineer learn core programming skills in Python. You will learn about object oriented programming, control flow, and data structures, all of which will prepare you to build complex applications. The course teaches you to create a wide range of applications, which will serve as examples for a software engineer in developing their own projects. By mastering Python and graphical interfaces, a software engineer can take advantage of an easy to learn language and create interesting projects.
UI Developer
A user interface, or UI, developer is responsible for creating the interactive elements of software. This Python course helps you build a foundation in UI development using tkinter. UI developers need to have skills in layout design, event handling, and data management, all covered in the course. The course will teach you how to design and build a variety of functional UIs like a calculator and a paint app. A UI developer can hone their skills in this course by designing layouts and user interactions, and learning how to organize code into maintainable projects.
Game Developer
Game developers create video games for computers, consoles, and mobile devices. This Python course introduces you to crucial programming concepts while building ten projects, including a snake game, using tkinter. You will learn the fundamentals of Python, including data structures, control flow, and object-oriented programming. A game developer can learn from this course how to build graphical user interfaces, handle user input, and organize code, all crucial elements of building a game. The course may be valuable as an introduction to user interface design and event driven programming.
Automation Engineer
Automation engineers design and implement automated systems. This Python course helps you build skills in a key programming language used for automation. As an automation engineer, you will benefit from the knowledge of Python syntax, data structures, control flow, and object-oriented programming the course provides. The course uses tkinter to create practical applications like a weather app, stock tracker, and a QR code generator, all while teaching you to organize code into maintainable projects. The skills developed in this course will be useful for automating tasks and interacting with systems.
Data Scientist
Data scientists analyze complex data to derive meaningful insights. While this course focuses on application development, it introduces you to Python, a key tool for data science. You will build a base in fundamental Python programming and learn how to work with data and implement algorithms. The course covers data manipulation, file handling, and control flow. A data scientist may be particularly interested in how this course teaches the management of data and how to interact with data from a variety of sources. While this course does not specifically cover machine learning or statistics, it introduces Python, which is a key tool for data scientists.
Web Developer
Web developers create and maintain websites and web applications. While this course focuses on desktop application development with tkinter, it provides a vital foundation in Python, which can also be used in web development. The course covers fundamental programming concepts, data manipulation, and object-oriented programming, all of which are relevant to web development. A web developer may find the understanding of logic, data structures, and fundamental Python that this course provides useful in their work. You will be able to programmatically manipulate and display data on a screen, which translates well to web development.
Research Assistant
A research assistant supports research activities, often involving data collection, analysis, and tool development. This course may be helpful for learning Python, used in many research settings. You will learn to use Python to build a variety of applications, and pick up foundational skills, such as working with different data types, controlling program flow, and organizing code. A research assistant may find the skills taught in the course for managing data, and building small tools to be useful. The ability to build a QR code generator or image editor, for example, may be useful.
Technology Consultant
A technology consultant advises clients on technology solutions. This course can help build a foundation in Python, which may be relevant to understanding various technical systems and solutions. You will learn the fundamentals of Python programming, including data structures, control flow, and object-oriented programming. You will also learn how to work with GUI interfaces, which can be relevant to understanding user interactions. This course may be helpful for gaining a better understanding of the technology needed to create the systems a technology consultant may advise on. Building a weather app, a calculator, and a paint program will be valuable to you.
Quality Assurance Analyst
A quality assurance analyst tests software to ensure it meets quality standards. While this Python course focuses on software development, it can help a quality assurance analyst understand how software works from the inside out. The course covers the fundamentals of Python programming, as well as object oriented programing, and user interface design using tkinter. Testing and debugging code is a core skill for a quality assurance analyst, and you will pick up many of these skills while building the 10 apps in the course. A quality assurance analyst may find it beneficial to see how software is created, as it will inform their approach to testing it.
Technical Support Specialist
A technical support specialist is responsible for assisting users with technical issues. This course may be useful for building a fundamental understanding of how software applications are built using Python. By learning Python, including key concepts such as data types, control flow, and graphical user interfaces, a technical support specialist can better understand the issues users may be facing. You will also learn how to organize code into maintainable projects, which can help with troubleshooting user issues. This course may be helpful for technical support specialists, but should be paired with courses in network and hardware.
Project Manager
A project manager is responsible for planning and overseeing projects to completion. While this Python course focuses on software development, a project manager may find value in having a better understanding of the software development process. You will learn to build ten different apps while working through the course, and gain skills in project management such as design, problem solving, and how to break a project into manageable pieces. While a project manager does not need to have coding skills, an understanding of software development will be useful. Building graphical user interfaces, such as a weather app, a calculator, and a paint program may be useful.
Technical Writer
A technical writer creates documentation and guides for technical products. This course may be useful for a technical writer to understand technical concepts and terminology related to software development. You will be exposed to a range of programming topics including data structures, control flow, object-oriented programming, and graphical user interfaces. While not directly related to technical writing, understanding the technologies that are documented will make a technical writer more effective. The practical experience from building 10 apps may provide insight into how software functions, and provide material for documentation.

Reading list

We've selected one 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 Learn Python by creating 10 apps with tkinter.
Provides a solid foundation in Python programming, covering essential concepts and syntax. It's particularly useful for beginners or those looking to refresh their Python skills before tackling more advanced topics. The project-based approach aligns well with the course's focus on building applications. It can be used as a reference text throughout the course.

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