click to
look inside
Look inside
Algorithm Projects with Python

Shortest Paths you own this product

This project is part of the liveProject series Six Small Algorithm Projects with Python
basic Python, Jupyter Notebook, and tkinter
skills learned
defining classes that represent network nodes and links • saving and restoring networks • automatically building test networks • finding shortest paths in a network
Rod Stephens
1 week · 6-8 hours per week · BEGINNER
filed under

placing your order...

Don't refresh or navigate away from the page.
liveProject This project is part of the liveProject series Six Small Algorithm Projects with Python liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. Solve practical problems, write working code, and analyze real data—with liveProject, you learn by doing. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $19.99 $29.99 you save $10 (33%)
Shortest Paths (liveProject) added to cart
continue shopping
go to cart

Look inside

In this liveProject, you’ll use Python algorithms to help find the shortest path between stops for a fleet management company. With trucks driving over 10 million miles per year, even slight time saving can be a huge cost reduction. You’ll build network classes, save, restore, and draw networks, use network algorithms to find shortest paths between locations, and lay the groundwork for future network applications.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Rod Stephens

Rod was a Microsoft Visual Basic Most Valuable Professional (MVP) for 15 years, has been a speaker at users’ groups and conferences, and has taught introductory programming courses. He’s written more than 35 books including Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C# and Beginning Software Engineering, which include material related to this series of liveProjects.


This liveProject is for Python programmers interested in experimenting and expanding their knowledge of algorithms. To begin this liveProject, you will need to be familiar with the following:

  • Basics of Python
  • Basics of Jupyter Notebook
  • Basics of tkinter
  • Create a class
  • Define __init__ and __str__ methods
  • Work with lists and iterate through them
  • Create a tkinter interface

you will learn

In this liveProject, you’ll implement the shortest path algorithm. This flexible algorithm is widely applicable across businesses and the sciences.

  • Defining classes that represent network nodes and links
  • Saving and restoring networks
  • Automatically building test networks
  • Using the tkinter Canvas widget to draw networks
  • Changing the appearance of drawn objects
  • Allowing the user to click on drawn objects
  • Finding shortest paths in a network


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.