Say "Hello, World!" With Python Easy Max Score: 5 Success Rate: 96.24%

Python if-else easy python (basic) max score: 10 success rate: 89.70%, arithmetic operators easy python (basic) max score: 10 success rate: 97.41%, python: division easy python (basic) max score: 10 success rate: 98.68%, loops easy python (basic) max score: 10 success rate: 98.10%, write a function medium python (basic) max score: 10 success rate: 90.31%, print function easy python (basic) max score: 20 success rate: 97.27%, list comprehensions easy python (basic) max score: 10 success rate: 97.68%, find the runner-up score easy python (basic) max score: 10 success rate: 94.17%, nested lists easy python (basic) max score: 10 success rate: 91.70%, cookie support is required to access hackerrank.

Seems like cookies are disabled on this browser, please enable them to open this website

Mastering Algorithms for Problem Solving in Python

Mastering Algorithms for Problem Solving in Python

Intermediate

Certificate of Completion

AI-powered Learning:

This course includes:

Takeaway Skills

A comprehensive understanding of algorithms and their applications in problem solving

Proficiency in implementing recursion and backtracking in Python for complex tasks

An understanding of the concept of memoization and dynamic programming

Ability to apply memoization and dynamic programming for efficient computation in Python

Hands-on experience solving algorithmic challenges in Python

Course Overview

As a developer, mastering the concepts of algorithms and being proficient in implementing them is essential to improving problem-solving skills. This course aims to equip you with an in-depth understanding of algorithms and how they can be utilized for problem-solving in Python. Starting with the basics, you'll gain a foundational understanding of what algorithms are, with topics ranging from simple multiplication algorithms to analyzing algorithms. Then, you’ll delve into more advanced topics like recursi... Show More

Course Content

Expand All Sections

Getting Started

Introduction to Algorithm

Backtracking

Dynamic Programming

Greedy Algorithms

Prove Your Skills: A Five-Chapter Assessment

Basic Graph Algorithms

Depth-First Search

Minimum Spanning Trees

Shortest Paths

All-Pairs Shortest Paths

Pushing Your Limits: A Comprehensive Assessment

Wrapping up

problem solving skills in python

  • python basics
  • get started with python
  • online practice

A great way to improve quickly at programming with Python is to practice with a wide range of exercises and programming challenges. In this article, we give you 10 Python practice exercises to boost your skills.

Practice exercises are a great way to learn Python. Well-designed exercises expose you to new concepts, such as writing different types of loops, working with different data structures like lists, arrays, and tuples, and reading in different file types. Good exercises should be at a level that is approachable for beginners but also hard enough to challenge you, pushing your knowledge and skills to the next level.

If you’re new to Python and looking for a structured way to improve your programming, consider taking the Python Basics Practice course. It includes 17 interactive exercises designed to improve all aspects of your programming and get you into good programming habits early. Read about the course in the March 2023 episode of our series Python Course of the Month .

Take the course Python Practice: Word Games , and you gain experience working with string functions and text files through its 27 interactive exercises.  Its release announcement gives you more information and a feel for how it works.

Each course has enough material to keep you busy for about 10 hours. To give you a little taste of what these courses teach you, we have selected 10 Python practice exercises straight from these courses. We’ll give you the exercises and solutions with detailed explanations about how they work.

To get the most out of this article, have a go at solving the problems before reading the solutions. Some of these practice exercises have a few possible solutions, so also try to come up with an alternative solution after you’ve gone through each exercise.

Let’s get started!

Exercise 1: User Input and Conditional Statements

Write a program that asks the user for a number then prints the following sentence that number of times: ‘I am back to check on my skills!’ If the number is greater than 10, print this sentence instead: ‘Python conditions and loops are a piece of cake.’ Assume you can only pass positive integers.

Here, we start by using the built-in function input() , which accepts user input from the keyboard. The first argument is the prompt displayed on the screen; the input is converted into an integer with int() and saved as the variable number. If the variable number is greater than 10, the first message is printed once on the screen. If not, the second message is printed in a loop number times.

Exercise 2: Lowercase and Uppercase Characters

Below is a string, text . It contains a long string of characters. Your task is to iterate over the characters of the string, count uppercase letters and lowercase letters, and print the result:

We start this one by initializing the two counters for uppercase and lowercase characters. Then, we loop through every letter in text and check if it is lowercase. If so, we increment the lowercase counter by one. If not, we check if it is uppercase and if so, we increment the uppercase counter by one. Finally, we print the results in the required format.

Exercise 3: Building Triangles

Create a function named is_triangle_possible() that accepts three positive numbers. It should return True if it is possible to create a triangle from line segments of given lengths and False otherwise. With 3 numbers, it is sometimes, but not always, possible to create a triangle: You cannot create a triangle from a = 13, b = 2, and c = 3, but you can from a = 13, b = 9, and c = 10.

The key to solving this problem is to determine when three lines make a triangle regardless of the type of triangle. It may be helpful to start drawing triangles before you start coding anything.

Python Practice Exercises for Beginners

Notice that the sum of any two sides must be larger than the third side to form a triangle. That means we need a + b > c, c + b > a, and a + c > b. All three conditions must be met to form a triangle; hence we need the and condition in the solution. Once you have this insight, the solution is easy!

Exercise 4: Call a Function From Another Function

Create two functions: print_five_times() and speak() . The function print_five_times() should accept one parameter (called sentence) and print it five times. The function speak(sentence, repeat) should have two parameters: sentence (a string of letters), and repeat (a Boolean with a default value set to False ). If the repeat parameter is set to False , the function should just print a sentence once. If the repeat parameter is set to True, the function should call the print_five_times() function.

This is a good example of calling a function in another function. It is something you’ll do often in your programming career. It is also a nice demonstration of how to use a Boolean flag to control the flow of your program.

If the repeat parameter is True, the print_five_times() function is called, which prints the sentence parameter 5 times in a loop. Otherwise, the sentence parameter is just printed once. Note that in Python, writing if repeat is equivalent to if repeat == True .

Exercise 5: Looping and Conditional Statements

Write a function called find_greater_than() that takes two parameters: a list of numbers and an integer threshold. The function should create a new list containing all numbers in the input list greater than the given threshold. The order of numbers in the result list should be the same as in the input list. For example:

Here, we start by defining an empty list to store our results. Then, we loop through all elements in the input list and test if the element is greater than the threshold. If so, we append the element to the new list.

Notice that we do not explicitly need an else and pass to do nothing when integer is not greater than threshold . You may include this if you like.

Exercise 6: Nested Loops and Conditional Statements

Write a function called find_censored_words() that accepts a list of strings and a list of special characters as its arguments, and prints all censored words from it one by one in separate lines. A word is considered censored if it has at least one character from the special_chars list. Use the word_list variable to test your function. We've prepared the two lists for you:

This is another nice example of looping through a list and testing a condition. We start by looping through every word in word_list . Then, we loop through every character in the current word and check if the current character is in the special_chars list.

This time, however, we have a break statement. This exits the inner loop as soon as we detect one special character since it does not matter if we have one or several special characters in the word.

Exercise 7: Lists and Tuples

Create a function find_short_long_word(words_list) . The function should return a tuple of the shortest word in the list and the longest word in the list (in that order). If there are multiple words that qualify as the shortest word, return the first shortest word in the list. And if there are multiple words that qualify as the longest word, return the last longest word in the list. For example, for the following list:

the function should return

Assume the input list is non-empty.

The key to this problem is to start with a “guess” for the shortest and longest words. We do this by creating variables shortest_word and longest_word and setting both to be the first word in the input list.

We loop through the words in the input list and check if the current word is shorter than our initial “guess.” If so, we update the shortest_word variable. If not, we check to see if it is longer than or equal to our initial “guess” for the longest word, and if so, we update the longest_word variable. Having the >= condition ensures the longest word is the last longest word. Finally, we return the shortest and longest words in a tuple.

Exercise 8: Dictionaries

As you see, we've prepared the test_results variable for you. Your task is to iterate over the values of the dictionary and print all names of people who received less than 45 points.

Here, we have an example of how to iterate through a dictionary. Dictionaries are useful data structures that allow you to create a key (the names of the students) and attach a value to it (their test results). Dictionaries have the dictionary.items() method, which returns an object with each key:value pair in a tuple.

The solution shows how to loop through this object and assign a key and a value to two variables. Then, we test whether the value variable is greater than 45. If so, we print the key variable.

Exercise 9: More Dictionaries

Write a function called consonant_vowels_count(frequencies_dictionary, vowels) that takes a dictionary and a list of vowels as arguments. The keys of the dictionary are letters and the values are their frequencies. The function should print the total number of consonants and the total number of vowels in the following format:

For example, for input:

the output should be:

Working with dictionaries is an important skill. So, here’s another exercise that requires you to iterate through dictionary items.

We start by defining a list of vowels. Next, we need to define two counters, one for vowels and one for consonants, both set to zero. Then, we iterate through the input dictionary items and test whether the key is in the vowels list. If so, we increase the vowels counter by one, if not, we increase the consonants counter by one. Finally, we print out the results in the required format.

Exercise 10: String Encryption

Implement the Caesar cipher . This is a simple encryption technique that substitutes every letter in a word with another letter from some fixed number of positions down the alphabet.

For example, consider the string 'word' . If we shift every letter down one position in the alphabet, we have 'xpse' . Shifting by 2 positions gives the string 'yqtf' . Start by defining a string with every letter in the alphabet:

Name your function cipher(word, shift) , which accepts a string to encrypt, and an integer number of positions in the alphabet by which to shift every letter.

This exercise is taken from the Word Games course. We have our string containing all lowercase letters, from which we create a shifted alphabet using a clever little string-slicing technique. Next, we create an empty string to store our encrypted word. Then, we loop through every letter in the word and find its index, or position, in the alphabet. Using this index, we get the corresponding shifted letter from the shifted alphabet string. This letter is added to the end of the new_word string.

This is just one approach to solving this problem, and it only works for lowercase words. Try inputting a word with an uppercase letter; you’ll get a ValueError . When you take the Word Games course, you slowly work up to a better solution step-by-step. This better solution takes advantage of two built-in functions chr() and ord() to make it simpler and more robust. The course contains three similar games, with each game comprising several practice exercises to build up your knowledge.

Do You Want More Python Practice Exercises?

We have given you a taste of the Python practice exercises available in two of our courses, Python Basics Practice and Python Practice: Word Games . These courses are designed to develop skills important to a successful Python programmer, and the exercises above were taken directly from the courses. Sign up for our platform (it’s free!) to find more exercises like these.

We’ve discussed Different Ways to Practice Python in the past, and doing interactive exercises is just one way. Our other tips include reading books, watching videos, and taking on projects. For tips on good books for Python, check out “ The 5 Best Python Books for Beginners .” It’s important to get the basics down first and make sure your practice exercises are fun, as we discuss in “ What’s the Best Way to Practice Python? ” If you keep up with your practice exercises, you’ll become a Python master in no time!

You may also like

problem solving skills in python

How Do You Write a SELECT Statement in SQL?

problem solving skills in python

What Is a Foreign Key in SQL?

problem solving skills in python

Enumerate and Explain All the Basic Elements of an SQL Query

  • How to Improve Programming Skills in Python

Powerful, stable and flexible Cloud servers. Try Clouding.io today.

If you have worked in the programming field, or even considered going into programming, you are probably familiar with the famous words of Apple founder Steve Jobs:

“Everyone in this country should learn to program a computer, because it teaches you to think.”

Python is one of the most popular programming languages and can teach us a lot about critical thinking. But if you are in programming, you also know that there are important reasons to keep your programming skills up to date, especially with Python . In this article, we’ll consider some of the most important ways you can update your programming skills—and it isn’t just about learning more Python. Critical thinking is essential to programming and a great way to build your skills.

Why programmers need more than programming skills

According to HackerRank,

“Problem-solving skills are almost unanimously the most important qualification that employers look for […] more than programming languages proficiency, debugging, and system design.”

So how can you apply this to developing Python proficiency?

Obviously, the most important way to build programming skills in Python is to learn Python. Taking Python courses is a great place to start, and building toward more advanced Python learning will help you build technical skills. But programmers need more than just technical skills. You need to understand the best way to solve problems. While most people solve problems through brute force, but, this is not the best way to reach a solution. Instead, Python programmers need to develop a methodology for problem solving that will lead them to a well-crafted solution.

Improving Python Programming Skills in Four Steps

There are a few key steps, and they are listed below. However, it is not enough just to read them — you need to actually make them the part of your programming “life.”

  • Evaluate the problem. Understand the programming issue you are attempting to overcome and all of the parts of the problem. In Python programming, a key skill is simply evaluating what needs to be done before you begin the process of programming a solution. Therefore, in any Python challenge, the first step is to study the problem in order to ascertain what you need to research and what skills you need to develop in order to begin to approach a solution. Frequently, if you find that you are able to explain the problem in plain English, it means that you understand it well enough to start to find a solution.
  • Make a plan to handle the problem. In Python programming, as with any other type of programming problem, don’t simply launch into your programming without making a plan to handle potential problems logically from beginning to end. You want to begin from a position of strength, not simply start hacking and hoping for the best. Therefore, consider where you are starting and where you want to end up in order to map out the most logical way to arrange steps to reach that point.
  • Make the problem manageable by dividing it up. When you are programming Python, it can be intimidating to tackle a major project of a major problem all at once. Instead, try dividing your next programming task into smaller steps that you can easily achieve as you move step by step through the programming or problem-solving process. This will not only make it easier to reach your goals but will also help you to celebrate small victories on your way, giving you the motivation to keep building on your successes. One of the best ways to achieve success is, to begin with, the smallest, easiest division to complete and use that success to build toward increasingly large and complex problems. Doing so will often help to simplify the larger tasks and make the overall project easier. As V. Anton Spraul said, “Reduce the problem to the point where you know how to solve it and write the solution. Then expand the problem slightly and rewrite the solution to match, and keep going until you are back where you started.”
  • Practice your skills every day. Lastly, the most important way to develop your Python programming skills and how to troubleshoot Python code is to practice all the time. That doesn’t mean you have to seek out problems just to try to fix them. There are other ways to practice the same skill set in other ways. Elon Musk, for example, plays video games and Peter Thiel plays chess to build problem-solving skills that apply in many areas of life.

When Your Programming Skills Are not Enough

While all the tips above will certainly work if you actually apply them, you can rest assured that you will stumble upon many difficult tasks, which you won’t be able to crack without some assistance. Asking for help is one of the most efficient strategies of problem-solving. You can hire a tutor to help you gradually increase your programming skills, analyze your mistakes, etc. However, if the matter is urgent, you can choose another path — start with delegating your coding assignments to specialized services, and let experts help you with your homework here and now. Later, you can use the assignment done by professionals as tutorial material for other similar assignments. Let’s face it, if studying materials were of better quality and answered the current programming trends more accurately, students would need much less extra assistance.

If you are studying Python programming or trying to problem-solve in Python for a course, your biggest challenge is probably making it through your programming homework. Fortunately, if you have programming challenges, you can pay someone to do a programming assignment for you. Professional homework services like AssignmentCore have programming experts who can help with any type of coding project or Python assignment. There is a team of experts who are on stand-by to leap into action as soon as you have a Python challenge that you need an expert’s eye to complete so you can get ahead of the competition.

Author Bio:

Ted Wilson is a senior programming expert at AssignmentCore , a leading worldwide programming homework service. His main interests are Python, Java, MATLAB languages, and web development. He is responsible for providing customers with top-quality help with programming assignments of any complexity.

You Might Be Interested In

You’ll also like:.

  • AWS Invoke One Lambda Function From Another
  • AWS Cognito adminSetUserMFAPreference not setting MFA
  • Unable to import module 'lambda_function' no module named 'lambda_function' | AWS Cognito | Lambda Function
  • Python Try Except Else Finally
  • How to Show Progress Bar in Python
  • Post JSON to FastAPI
  • Send Parameters to POST Request | FastAPI
  • Passing Query Parameters in FastAPI
  • Python API Using FastAPI
  • No matching distribution found for fastapi
  • Python Ternary Operator
  • Download YouTube Videos Using Python | Source Code
  • Python Script To Check Vaccine Availability | Source Code
  • Create Login Page Using Python Flask & Bootstrap
  • Python, Sorting Object Array
  • Python : SyntaxError: Missing parentheses in call to 'print'.
  • Python, Capitalize First Letter Of All Sentences
  • Python, Capitalize First Letter In A Sentence
  • Python, Check String Contains Another String
  • Skills That Make You a Successful Python Developer
  • Choosing the Right Python Framework in 2020: Django vs Flask
  • How To Secure Python Apps
  • Secure Coding in Python
  • Building Serverless Apps Using Azure Functions and Python
  • Development With Python in AWS
  • How To Handle 404 Error In Python Flask
  • How To Read And Display JSON using Python
  • 6 Cool Things You Can Do with PyTorch - the Python-Native Deep Learning Framework
  • How To Read Email From GMAIL API Using Python
  • How to Implement Matrix Multiplication In Python
  • How To Send Email Using Gmail In Python
  • How PyMongo Update Document Works
  • Python Flask Web Application On GE Predix
  • How to Read Email From Gmail Using Python 3
  • Understanding Regular expressions in Python
  • Writing Error Log in Python Flask Web Application
  • How to Create JSON Using Python Flask
  • Creating a Web App Using Python Flask, AngularJS & MongoDB
  • Insert, Read, Update, Delete in MongoDB using PyMongo
  • Python REST API Authentication Using AngularJS App
  • Working with JSON in Python Flask
  • What does __name__=='__main__' mean in Python ?
  • Python Flask jQuery Ajax POST
  • Python Web Application Development Using Flask MySQL
  • Flask AngularJS app powered by RESTful API - Setting Up the Application
  • Creating RESTful API Using Python Flask & MySQL - Part 2
  • Creating Flask RESTful API Using Python & MySQL
  • Top Courses
  • Online Degrees
  • Find your New Career
  • Join for Free

University of Alberta

Problem Solving, Python Programming, and Video Games

Taught in English

Some content may not be translated

Financial aid available

72,203 already enrolled

Gain insight into a topic and learn the fundamentals

Duane Szafron

Instructors: Duane Szafron +1 more

Instructors

Instructor ratings.

We asked all learners to give feedback on our instructors based on the quality of their teaching style.

Coursera Plus

Included with Coursera Plus

(221 reviews)

Skills you'll gain

  • Python Syntax And Semantics
  • Computer Science
  • Python Programming
  • Problem Solving
  • Video Games

Details to know

problem solving skills in python

Add to your LinkedIn profile

146 quizzes

See how employees at top companies are mastering in-demand skills

Placeholder

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Placeholder

There are 12 modules in this course

This course is an introduction to computer science and programming in Python. Upon successful completion of this course, you will be able to:

1. Take a new computational problem and solve it, using several problem solving techniques including abstraction and problem decomposition. 2. Follow a design creation process that includes: descriptions, test plans, and algorithms. 3. Code, test, and debug a program in Python, based on your design. Important computer science concepts such as problem solving (computational thinking), problem decomposition, algorithms, abstraction, and software quality are emphasized throughout. This course uses problem-based learning. The Python programming language and video games are used to demonstrate computer science concepts in a concrete and fun manner. The instructional videos present Python using a conceptual framework that can be used to understand any programming language. This framework is based on several general programming language concepts that you will learn during the course including: lexics, syntax, and semantics. Other approaches to programming may be quicker, but are more focused on a single programming language, or on a few of the simplest aspects of programming languages. The approach used in this course may take more time, but you will gain a deeper understanding of programming languages. After completing the course, in addition to learning Python programming, you will be able to apply the knowledge and skills you acquired to: non-game problems, other programming languages, and other computer science courses. You do not need any previous programming, Python, or video game experience. However, several basic skills are needed: computer use (e.g., mouse, keyboard, document editing), elementary mathematics, attention to detail (as with many technical subjects), and a “just give it a try” spirit will be keys to your success. Despite the use of video games for the main programming project, PVG is not about computer games. For each new programming concept, PVG uses non-game examples to provide a basic understanding of computational principles, before applying these programming concepts to video games. The interactive learning objects (ILO) of the course provide automatic, context-specific guidance and feedback, like a virtual teaching assistant, as you develop problem descriptions, functional test plans, and algorithms. The course forums are supported by knowledgeable University of Alberta personnel, to help you succeed. All videos, assessments, and ILOs are available free of charge. There is an optional Coursera certificate available for a fee.

Module 0: Introduction

In Module 0, you will meet the instructional team and be introduced to the four themes of this course: computer science, problem solving, Python programming, and how to create video games.

What's included

6 videos 2 readings 1 quiz

6 videos • Total 31 minutes

  • Course Themes • 7 minutes • Preview module
  • Computer Science • 5 minutes
  • Programming Languages • 3 minutes
  • Learning Outcomes and Problem-Based Learning • 4 minutes
  • How to Get the Most Out of this Course • 5 minutes
  • Suggestions for Learner Success • 5 minutes

2 readings • Total 20 minutes

  • Instructor Bios • 10 minutes
  • Acknowledgements • 10 minutes

1 quiz • Total 12 minutes

  • Introduction • 12 minutes

Module 1: Design Hacking Version 1

In Module 1, you will explore the game creation process that is used in this course. You will use this process to design Version 1 of the first game, Hacking. You will use two problem-solving techniques: problem decomposition and algorithms. You will explore five criteria for problem decomposition: experiential decomposition, feature selection, problem refinement, spatial decomposition, and temporal decomposition. To create your design for Hacking Version 1, you will use three interactive learning objects: the description builder, functional test plan builder, and algorithm builder.

7 videos 9 readings 6 quizzes

7 videos • Total 58 minutes

  • Game Creation Process • 7 minutes • Preview module
  • Observe Hacking Game • 2 minutes
  • Game Versions • 10 minutes
  • Observe Hacking Version 1 • 1 minute
  • Describe Hacking Version 1 • 11 minutes
  • Create Test Plan for Hacking Version 1 • 13 minutes
  • Create Algorithm for Hacking Version 1 • 10 minutes

9 readings • Total 85 minutes

  • The PVG Virtual Machine • 20 minutes
  • Play Hacking Game • 10 minutes
  • Play Hacking Version 1 • 10 minutes
  • Describe Hacking Version 1 • 10 minutes
  • Hacking Version 1 Description Solution • 5 minutes
  • Create Test Plan for Hacking Version 1 • 10 minutes
  • Hacking Version 1 Test Plan Solution • 5 minutes
  • Hacking Version 1 Algorithm Solution • 5 minutes

6 quizzes • Total 158 minutes

  • Game Creation Process • 30 minutes
  • Understand Hacking • 30 minutes
  • Game Versions • 30 minutes
  • Understand Hacking Version 1 • 30 minutes
  • The Game Creation Process • 30 minutes
  • Problem Solving Ontology • 8 minutes

Module 2: Program Hacking Version 1

In Module 2, you will discover how lexics, syntax, and semantics can be used to understand and describe programming languages. You will use these concepts to understand your first Python statement (expression statement), first three Python expressions (literal, identifier, function call), and first five Python types (int, str, float, function, NoneType). You will use these Python constructs to write, test, and debug Hacking Version 1, a text-based game version. You will then reflect on your game version by using a third problem-solving technique called abstraction, including the specific technique of solution generalization, to solve similar problems.

12 videos 7 readings 11 quizzes

12 videos • Total 79 minutes

  • Python Evaluation Examples • 5 minutes • Preview module
  • Python Interpretation • 10 minutes
  • Python Lexical Analysis • 7 minutes
  • Python Syntax Analysis • 11 minutes
  • Python Objects • 5 minutes
  • Python Semantics of Literals and Identifiers • 10 minutes
  • Python Semantics of Function Calls • 3 minutes
  • Python Program Interpretation • 5 minutes
  • Program Hacking Version 1 • 9 minutes
  • The Reflection Process • 2 minutes
  • Review Code for Hacking Version 1 • 5 minutes
  • Solution Issues • 2 minutes

7 readings • Total 80 minutes

  • The Python Shell in the Wing IDE • 20 minutes
  • Lexical Rules, Tables and Sample Problem (identifier, literal and delimiter) • 10 minutes
  • Syntax Diagrams and Sample Problem (expression statement, expression and function call) • 10 minutes
  • Semantic Rules and Sample Problem (identifier, literal and function call) • 10 minutes
  • Programming With the Wing IDE • 10 minutes
  • Hacking Version 1 Solution Code • 10 minutes
  • Software Quality Tests for Hacking Version 1 • 10 minutes

11 quizzes • Total 154 minutes

  • Python Evaluation Examples • 5 minutes
  • Interpretation (lexical analysis, syntax analysis and semantic analysis) • 6 minutes
  • Lexical Analysis (identifier, literal and delimiter) • 15 minutes
  • Syntax Analysis (expression statement, expression and function call) • 12 minutes
  • Python Objects • 6 minutes
  • Semantic Analysis (identifier, literal and function call) • 6 minutes
  • Evaluation (identifier, literal and function call) • 30 minutes
  • Programming (identifier, literal and function call) • 30 minutes
  • Program Hacking Version 1 • 30 minutes
  • Reflect on Language Concepts used in Hacking Version 1 • 9 minutes
  • The Game Creation Process • 5 minutes

Module 3: Hacking Version 2

In Module 3, you will identify solution issues in your game. You will apply a second form of the abstraction problem-solving technique, called using templates, to solve a solution issue by using a graphics library. You will then use lexics, syntax, and semantics to learn two new Python statements (assignment, import), two new Python expressions (binary expression, attribute reference), and one new Python type (module). You will employ these Python constructs and a simple graphics library to write, test, and debug Hacking Version 2.

12 videos 21 readings 30 quizzes

12 videos • Total 73 minutes

  • Solution Issues in Hacking Version 1 • 5 minutes • Preview module
  • Observe Hacking Version 2 • 1 minute
  • Describe Hacking Version 2 • 5 minutes
  • Regression Testing and Deleting Obsolete Tests • 4 minutes
  • Create Algorithm for Hacking Version 2 • 1 minute
  • Python Assignment Statement • 8 minutes
  • Python Binary Expression and Operator Token • 8 minutes
  • Python Import Statement and Keyword Token • 7 minutes
  • Python Multi-argument Function Call • 5 minutes
  • Python Method Call and Attribute Reference • 7 minutes
  • Program Hacking Version 2 • 11 minutes
  • Review Code for Hacking Version 2 • 5 minutes

21 readings • Total 195 minutes

  • Play Hacking Version 2 • 10 minutes
  • Describe Hacking Version 2 • 10 minutes
  • Hacking Version 2 Description Solution • 5 minutes
  • Create Test Plan for Hacking Version 2 • 10 minutes
  • Hacking Version 2 Test Plan Solution • 5 minutes
  • Create Algorithm for Hacking Version 2 • 10 minutes
  • Hacking Version 2 Algorithm • 5 minutes
  • Syntax Diagrams and Sample Problem (statement and assignment statement ) • 10 minutes
  • Semantic Rules (assignment statement) • 10 minutes
  • Lexical Rules and Tables (operator) • 10 minutes
  • Syntax Diagrams and Sample Problem (binary expression and binary operator) • 10 minutes
  • Semantic Rules and Sample Problem(binary expression) • 10 minutes
  • Lexical Rules and Tables (keyword) • 10 minutes
  • Syntax Diagrams and Sample Problem (import statement and module) • 10 minutes
  • Semantic Rules and Sample Problem (import statement) • 10 minutes
  • Syntax Diagrams and Sample Problem (multi-argument function call) • 10 minutes
  • Semantic Rules and Sample Problem (multi-argument function call) • 10 minutes
  • Syntax Diagrams and Sample Problem(method call and attribute reference) • 10 minutes
  • Semantic Rules and Sample Problem (method call and attribute reference) • 10 minutes
  • Hacking Version 2 Solution Code • 10 minutes
  • Software Quality Tests for Hacking Version 2 • 10 minutes

30 quizzes • Total 516 minutes

  • Syntax Analysis (import statement and module) • 9 minutes
  • Semantic Analysis (import statement) • 8 minutes
  • Syntax Analysis (multi-argument function call) • 27 minutes
  • Semantic Analysis (multi-argument function call) • 21 minutes
  • Syntax Analysis (method call and attribute reference) • 21 minutes
  • Semantic Analysis (method call and attribute reference) • 12 minutes
  • Solution Issues in Hacking Version 1 • 6 minutes
  • Understand Hacking Version 2 • 5 minutes
  • Delete Obsolete Tests for Hacking Version 2 • 5 minutes
  • Lexical Analysis (review) • 30 minutes
  • Syntax Analysis (statement and assignment statement) • 15 minutes
  • Semantic Analysis (assignment statement) • 9 minutes
  • Evaluation (assignment statement) • 11 minutes
  • Programming (assignment statement) • 30 minutes
  • Lexical Analysis (operator) • 15 minutes
  • Syntax Analysis (binary expression and binary operator) • 27 minutes
  • Semantic Analysis (binary expression) • 14 minutes
  • Evaluation (binary expression and operator) • 14 minutes
  • Programming (binary expression and operator) • 30 minutes
  • Lexical Analysis (keyword) • 14 minutes
  • Evaluation (import statement and keyword) • 10 minutes
  • Programming (import statement and keyword) • 30 minutes
  • Lexical Analysis (review) • 17 minutes
  • Evaluation (multi-argument function call) • 11 minutes
  • Programming (multi-argument function call) • 30 minutes
  • Lexical Analysis (review) • 14 minutes
  • Evaluation (method call and attribute reference) • 9 minutes
  • Programming (method call and attribute reference) • 30 minutes
  • Program Hacking Version 2 • 30 minutes
  • Reflect on language concepts used in Hacking Version 2 • 12 minutes

Module 4: Hacking Version 3

In Module 4, you will modify your game design to support multiple gameplay paths using a new problem decomposition criteria called case-based decomposition, which utilizes a selection control structure. You will learn one new Python statement (if), one new Python expression (unary expression), and one new Python type (bool). You will employ these Python constructs to write, test, and debug Hacking Version 3.

8 videos 16 readings 19 quizzes

8 videos • Total 39 minutes

  • Solution Issues in Hacking Version 2 • 2 minutes • Preview module
  • Observe Hacking Version 3 • 0 minutes
  • Create Algorithm for Hacking Version 3 • 4 minutes
  • Python If Statement and Boolean Type • 10 minutes
  • Python Elif and Else Clauses • 7 minutes
  • Python Keyword Operator, Short Circuit Evaluation, Unary Expression, and Operator Precedence • 7 minutes
  • Program Hacking Version 3 • 2 minutes
  • Review Code for Hacking Version 3 • 4 minutes

16 readings • Total 145 minutes

  • Play Hacking Version 3 • 10 minutes
  • Describe Hacking Version 3 • 10 minutes
  • Hacking Version 3 Description Solution • 5 minutes
  • Create Test Plan for Hacking Version 3 • 10 minutes
  • Hacking Version 3 Test Plan Solution • 5 minutes
  • Create Algorithm for Hacking Version 3 • 10 minutes
  • Hacking Version 3 Algorithm Solution • 5 minutes
  • Lexical Rules, Tables and Sample Problem (newline, indent and dedent) • 10 minutes
  • Syntax Diagrams (if statement) • 10 minutes
  • Semantic Rules and Sample Problem (if statement) • 10 minutes
  • Syntax Diagrams and Sample Problem (elif and else clause) • 10 minutes
  • Semantic Rules and Sample Problem (elif and else clauses) • 10 minutes
  • Syntax Diagrams and Sample Problem (keyword operator, unary expression, unary operator, and operator precedence) • 10 minutes
  • Semantic Rule and Sample Problem (keyword operator and unary expression) • 10 minutes
  • Hacking Version 3 Solution Code • 10 minutes
  • Software Quality Tests in Hacking Version 3 • 10 minutes

19 quizzes • Total 479 minutes

  • Evaluation (if statement and boolean) • 14 minutes
  • Lexical Analysis (review) • 33 minutes
  • Syntax Analysis (elif and else clauses) • 54 minutes
  • Semantic Analysis (elif and else clause) • 30 minutes
  • Evaluation (elif and else clauses) • 16 minutes
  • Lexical Analysis (review) • 32 minutes
  • Semantic Analysis (short circuit evaluation and operator precedence) • 30 minutes
  • Reflect on language concepts used in Hacking Version 3 • 8 minutes
  • Solution Issues in Hacking Version 2 • 5 minutes
  • Understand Hacking Version 3 • 5 minutes
  • Delete Obsolete Tests for Hacking Version 3 • 5 minutes
  • Lexical Analysis (newline, indent and dedent) • 26 minutes
  • Syntax Analysis (if statement) • 33 minutes
  • Semantic Analysis (if statement) • 23 minutes
  • Programming (if statement and boolean type) • 30 minutes
  • Programming (elif and else clause) • 30 minutes
  • Syntax Analysis (keyword operator, unary expression, unary operator, and operator precedence) • 45 minutes
  • Programming (keyword operator, short circuit evaluation, unary expression, and operator precedence) • 30 minutes
  • Program Hacking Version 3 • 30 minutes

Module 5: Hacking Version 4 & 5

In Module 5, you will modify your game design using two new abstraction techniques, called control abstraction and data abstraction. You will explore two different control abstractions, called definite and indefinite repetition. You will learn two new Python statements (for, while), four new Python expressions (subscription expression, expression list, parenthesized expression, list display), and three new Python types (tuple, list, range). You will employ these Python constructs to write, test, and debug Hacking Version 4 and Hacking Version 5.

17 videos 22 readings 29 quizzes

17 videos • Total 73 minutes

  • Solution Issues in Hacking Version 3 • 4 minutes • Preview module
  • Create Algorithm for Hacking Version 4 • 4 minutes
  • Python Sequences and Subscription • 8 minutes
  • Python Tuple and List Types • 5 minutes
  • Python Sequence Element Replacement • 4 minutes
  • Python For Statement • 5 minutes
  • Program Hacking Version 4 • 2 minutes
  • Review Code for Hacking Version 4 • 5 minutes
  • Solution Issues in Hacking Version 4 • 3 minutes
  • Observe Hacking Version 5 • 1 minute
  • Describe Hacking Version 5 • 0 minutes
  • Create Test Plan for Hacking Version 5 • 2 minutes
  • Create Algorithm for Hacking Version 5 • 4 minutes
  • Python While Statement • 4 minutes
  • Python Repetition Examples and Range Type • 8 minutes
  • Program Hacking Version 5 • 1 minute
  • Review Code for Hacking Version 5 • 4 minutes

22 readings • Total 200 minutes

  • Create Algorithm for Hacking Version 4 • 10 minutes
  • Hacking Version 4 Algorithm Solution • 5 minutes
  • Syntax Diagrams and Sample Problem (subscription) • 10 minutes
  • Semantic Rules and Sample Problem (subscription) • 10 minutes
  • Syntax Diagrams and Sample Problem (expression list, parenthesized expression, list display) • 10 minutes
  • Semantic Rules and Sample Problem (tuple and list type) • 10 minutes
  • Syntax Diagrams and Sample Problem (assignment target: subscription) • 10 minutes
  • Semantic Rules and Sample Problem (assignment target: subscription) • 10 minutes
  • Syntax Diagrams and Sample Problem (for statement) • 10 minutes
  • Semantic Rules and Sample Problem (for statement) • 10 minutes
  • Hacking Version 4 Solution Code • 10 minutes
  • Software Quality Tests for Hacking Version 4 • 10 minutes
  • Play Hacking Version 5 • 10 minutes
  • Describe Hacking Version 5 • 10 minutes
  • Hacking Version 5 Description Solution • 5 minutes
  • Create Test Plan for Hacking Version 5 • 10 minutes
  • Hacking Version 5 Test Plan Solution • 5 minutes
  • Create Algorithm for Hacking Version 5 • 10 minutes
  • Hacking Version 5 Algorithm Solution • 5 minutes
  • Syntax Diagrams and Sample Problem (while statement) • 10 minutes
  • Semantic Analysis and Sample Problem (while statement) • 10 minutes
  • Hacking Version 5 Solution Code • 10 minutes

29 quizzes • Total 644 minutes

  • Lexical Analysis (review) • 35 minutes
  • Evaluation (sequences and subscription) • 30 minutes
  • Syntax Analysis (expression list, parenthesized expression and list display) • 33 minutes
  • Semantic Analysis (tuple and list type) • 12 minutes
  • Evaluation (tuple and list type) • 12 minutes
  • Syntax Analysis (assignment target: subscription) • 24 minutes
  • Semantic Analysis (assignment target: subscription) • 20 minutes
  • Evaluation (sequence element replacement) • 8 minutes
  • Syntax Analysis (for statement) • 33 minutes
  • Evaluation (for statement) • 8 minutes
  • Reflect on Language Concepts used in Hacking Version 4 • 6 minutes
  • Syntax Analysis (while statement) • 30 minutes
  • Semantic Analysis (while statement) • 26 minutes
  • Evaluation (while statement) • 8 minutes
  • Evaluation (range type) • 8 minutes
  • Reflect on Language Concepts used in Hacking Version 5 • 11 minutes
  • Syntax Analysis (subscription) • 33 minutes
  • Semantic Analysis (subscription) • 30 minutes
  • Programming (sequences and subscription) • 30 minutes
  • Programming (tuple and list types) • 30 minutes
  • Programming (sequence element replacement) • 30 minutes
  • Semantic Analysis (for statement) • 29 minutes
  • Programming (for statement) • 30 minutes
  • Program Hacking Version 4 • 30 minutes
  • Understand Hacking Version 5 • 5 minutes
  • Delete Obsolete Descriptions from Hacking Version 5 • 3 minutes
  • Programming (while statement) • 30 minutes
  • Programming (range type) • 30 minutes
  • Program Hacking Version 5 • 30 minutes

Module 6: Hacking Version 6

In Module 6, you will learn a new control abstraction called a user-defined function. You will learn how to implement user-defined functions using two new Python statements (function definition, return). You will employ these Python constructs to significantly improve the quality of your code in Hacking Version 6.

8 videos 8 readings 19 quizzes

8 videos • Total 63 minutes

  • Solution Issues in Hacking Version 5 • 3 minutes • Preview module
  • Python Function Definitions • 15 minutes
  • Python Function Parameters • 6 minutes
  • Python Main Function and Identifier Scope • 9 minutes
  • Python Return Statement • 5 minutes
  • Python Side Effects • 6 minutes
  • Program Hacking Version 6 • 9 minutes
  • Review Code for Hacking Version 6 • 8 minutes

8 readings • Total 80 minutes

  • Syntax Diagrams and Sample Problem(function definition) • 10 minutes
  • Semantic Rules and Sample Problem (function definition) • 10 minutes
  • Syntax Diagrams (parameter list) • 10 minutes
  • Semantic Rules and Sample Problem (parameter list) • 10 minutes
  • Syntax Diagrams and Sample Problem (return statement) • 10 minutes
  • Semantic Rules and Sample Problem (return statement) • 10 minutes
  • Hacking Version 6 Solution Code • 10 minutes
  • Software Quality Tests for Hacking Version 6 • 10 minutes

19 quizzes • Total 434 minutes

  • Lexical Analysis (review) • 29 minutes
  • Syntax Analysis (function definition) • 42 minutes
  • Evaluation (function definition) • 8 minutes
  • Syntax Analysis (parameter list) • 33 minutes
  • Semantic Analysis (parameter list) • 29 minutes
  • Evaluation (function parameters) • 8 minutes
  • Evaluation (main function) • 12 minutes
  • Syntax Analysis (return statement) • 27 minutes
  • Evaluation (return statement) • 12 minutes
  • Evaluation (side effects) • 8 minutes
  • Reflect on Language Concepts used in Hacking Version 6 • 11 minutes
  • Semantic Analysis (function definition) • 18 minutes
  • Programming (function definition) • 30 minutes
  • Programming (function parameters) • 30 minutes
  • Programming (main function) • 30 minutes
  • Semantic Analysis (return statement) • 17 minutes
  • Programming (return statement) • 30 minutes
  • Programming (side effects) • 30 minutes
  • Program Hacking Version 6 • 30 minutes

Module 7: Hacking Version 7

In Module 7, you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Hacking game by designing, coding, testing, and debugging Hacking Version 7.

5 videos 8 readings 2 quizzes

5 videos • Total 12 minutes

  • Solution Issues in Hacking Version 6 • 1 minute • Preview module
  • Observe Hacking Version 7 • 1 minute
  • Create Algorithm for Hacking Version 7 • 3 minutes
  • Program Hacking Version 7 • 3 minutes
  • Identify Solution Issues in Hacking Version 7 • 2 minutes

8 readings • Total 65 minutes

  • Play Hacking Version 7 • 10 minutes
  • Describe Hacking Version 7 • 10 minutes
  • Hacking Version 7 Description Solution • 5 minutes
  • Create Test Plan for Hacking Version 7 • 10 minutes
  • Hacking Version 7 Test Plan Solution • 5 minutes
  • Create Algorithm for Hacking Version 7 • 10 minutes
  • Hacking Version 7 Algorithm Solution • 5 minutes
  • Hacking Version 7 Solution Code • 10 minutes

2 quizzes • Total 35 minutes

  • Understand Hacking Version 7 • 5 minutes
  • Program Hacking Version 7 • 30 minutes

Module 8: Poke the Dots Version 1 & 2

In Module 8, you will design and implement Version 1 of a new graphical game called Poke the Dots. You will then modify your game design using data abstraction to create user-defined classes. You will learn two new Python statements (class definition, pass) that will allow you to construct your own Python types. You will employ these Python constructs to implement Poke the Dots Version 2.

12 videos 21 readings 17 quizzes

12 videos • Total 83 minutes

  • Introduction to Poke the Dots • 4 minutes • Preview module
  • Observe Poke the Dots Version 1 • 0 minutes
  • Create Algorithm for Poke the Dots Version 1 • 12 minutes
  • Python Import Statement Variations • 9 minutes
  • Python Pass Statement • 2 minutes
  • Program Poke the Dots Version 1 • 13 minutes
  • Review Code for Poke the Dots Version 1 • 9 minutes
  • Solution Issues in Poke the Dots Version 1 • 2 minutes
  • Create Algorithm for Poke the Dots Version 2 • 2 minutes
  • Python Class Definition • 15 minutes
  • Program Poke the Dots Version 2 • 5 minutes
  • Review Code for Poke the Dots Version 2 • 7 minutes

21 readings • Total 185 minutes

  • Play Poke the Dots • 10 minutes
  • Play Poke the Dots Version 1 • 10 minutes
  • Describe Poke the Dots Version 1 • 10 minutes
  • Poke the Dots Version 1 Description Solution • 5 minutes
  • Create Test Plan for Poke the Dots Version 1 • 10 minutes
  • Poke the Dots Version 1 Test Plan Solution • 5 minutes
  • Create Algorithm for Poke the Dots Version 1 • 10 minutes
  • Poke the Dots Version 1 Algorithm Solution • 5 minutes
  • Syntax Diagrams and Sample Problem(import statement variations) • 10 minutes
  • Semantic Rules and Sample Problem (import statement variations) • 10 minutes
  • Syntax Diagrams and Sample Problem(pass statement) • 10 minutes
  • Semantic Rules and Sample Problem (pass statement) • 10 minutes
  • Poke the Dots Version 1 Solution Code • 10 minutes
  • Updated Algorithm for Poke the Dots Version 1 • 10 minutes
  • Poke the Dots Version 1 Updated Algorithm Solution • 5 minutes
  • Create Algorithm for Poke the Dots Version 2 • 10 minutes
  • Poke the Dots Version 2 Algorithm Solution • 5 minutes
  • Syntax Diagrams and Sample Problem (class definition) • 10 minutes
  • Semantic Rules and Sample Problem (class definition) • 10 minutes
  • Poke the Dots Version 2 Solution Code • 10 minutes
  • Software Quality Tests for Poke the Dots Version 2 • 10 minutes

17 quizzes • Total 351 minutes

  • Lexical Analysis (review) • 38 minutes
  • Syntax Analysis (import statement variations) • 18 minutes
  • Semantic Analysis (import statement variations) • 12 minutes
  • Programming (import statement variations) • 30 minutes
  • Syntax Analysis (pass statement) • 24 minutes
  • Semantic Analysis (pass statement) • 21 minutes
  • Programming (pass statement) • 30 minutes
  • Reflect on Language Concepts used in Poke the Dots Version 1 • 6 minutes
  • Syntax Analysis (class definition) • 21 minutes
  • Syntax Analysis (assignment target: attribute reference) • 21 minutes
  • Semantic Analysis (class definition) • 24 minutes
  • Programming (class definition) • 30 minutes
  • Reflect on Language Concepts used in Poke the Dots Version 2 • 6 minutes
  • Understand Poke the Dots • 5 minutes
  • Understand Poke the Dots Version 1 • 5 minutes
  • Program Poke the Dots Version 1 • 30 minutes
  • Program Poke the Dots Version 2 • 30 minutes

Module 9: Poke the Dots Version 3

In Module 9, you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Poke the Dots game by designing, coding, testing, and debugging Poke the Dots Version 3.

5 videos 8 readings 5 quizzes

5 videos • Total 9 minutes

  • Solution Issues in Poke the Dots Version 2 • 1 minute • Preview module
  • Observe Poke the Dots Version 3 • 1 minute
  • Create Algorithm for Poke the Dots Version 3 • 1 minute
  • Program Poke the Dots Version 3 • 1 minute
  • Review Code for Poke the Dots Version 3 • 4 minutes
  • Play Poke the Dots Version 3 • 10 minutes
  • Describe Poke the Dots Version 3 • 10 minutes
  • Poke the Dots Version 3 Description Solution • 5 minutes
  • Create Test Plan for Poke the Dots Version 3 • 10 minutes
  • Poke the Dots Version 3 Test Plan Solution • 5 minutes
  • Create Algorithm for Poke the Dots Version 3 • 10 minutes
  • Poke the Dots Version 3 Algorithm Solution • 5 minutes
  • Poke the Dots Version 3 Solution Code • 10 minutes

5 quizzes • Total 65 minutes

  • Reflect on Event Categories Used in Poke the Dots Version 3 • 20 minutes
  • Understand Poke the Dots Version 3 • 5 minutes
  • Delete Obsolete Descriptions for Poke the Dots Version 3 • 5 minutes
  • Delete Obsolete Tests for Poke the Dots Version 3 • 5 minutes
  • Program Poke the Dots Version 3 • 30 minutes

Module 10: Poke the Dots Version 4

In Module 10, you will modify your game design using a new form of control abstraction called user-defined methods. User-defined methods allow you to restrict access to the attributes of a class to improve data abstraction. You will employ user-defined methods to implement Poke the Dots Version 4.

6 videos 5 readings 5 quizzes

6 videos • Total 38 minutes

  • Solution Issues in Poke the Dots Version 3 • 4 minutes • Preview module
  • Create Algorithm for Poke the Dots Version 4 • 5 minutes
  • Python User-defined Methods and Self • 11 minutes
  • Python Private Attributes • 3 minutes
  • Program Poke the Dots Version 4 • 6 minutes
  • Review Code for Poke the Dots Version 4 • 7 minutes

5 readings • Total 45 minutes

  • Create Algorithm for Poke the Dots Version 4 • 10 minutes
  • Poke the Dots Version 4 Algorithm Solution • 5 minutes
  • Semantic Rules and Sample Problem (user-defined methods) • 10 minutes
  • Poke the Dots Version 4 Solution Code • 10 minutes
  • Software Quality Tests for Poke the Dots Version 4 • 10 minutes

5 quizzes • Total 128 minutes

  • Programming (user-defined methods) • 30 minutes
  • Reflect on Language Concepts used in Poke the Dots Version 4 • 8 minutes
  • Semantic Analysis (user-defined methods) • 30 minutes
  • Program Poke the Dots Version 4 • 30 minutes

Module 11: Poke the Dots Version 5

In Module 11, you will not learn any new problem-solving techniques or Python language features. Instead you will exercise your problem-solving skills and practice the language constructs you already know to improve your proficiency. You will add some fun features to the Poke the Dots game by designing, coding, testing, and debugging Poke the Dots Version 5.

5 videos • Total 8 minutes

  • Solution Issues in Poke the Dots Version 4 • 0 minutes • Preview module
  • Observe Poke the Dots Version 5 • 1 minute
  • Create Algorithm for Poke the Dots Version 5 • 0 minutes
  • Program Poke the Dots Version 5 • 1 minute
  • Solution Issues in Poke the Dots Version 5 • 4 minutes
  • Play Poke the Dots Version 5 • 10 minutes
  • Describe Poke the Dots Version 5 • 10 minutes
  • Poke the Dots Version 5 Description Solution • 5 minutes
  • Create Test Plan for Poke the Dots Version 5 • 10 minutes
  • Poke the Dots Version 5 Test Plan Solution • 5 minutes
  • Create Algorithm for Poke the Dots Version 5 • 10 minutes
  • Poke the Dots Version 5 Algorithm Solution • 5 minutes
  • Poke the Dots Version 5 Solution Code • 10 minutes
  • Understand Poke the Dots Version 5 • 5 minutes
  • Program Poke the Dots Version 5 • 30 minutes

problem solving skills in python

The University of Alberta is considered among the world’s leading public research- and teaching-intensive universities, known for excellence across the humanities, sciences, creative arts, business, engineering and health sciences. As one of Canada’s top universities, we are investing in purpose-built online post-secondary education—rooted in innovative digital pedagogies, world-class faculty, exceptional design, and a championed student experience.

Recommended if you're interested in Software Development

problem solving skills in python

Nanjing University

Data Processing Using Python

problem solving skills in python

Northwestern University

현대 로봇공학, 강좌 6: 캡스톤 프로젝트, 모바일 매니퓰레이션

problem solving skills in python

Google Cloud

Smart Analytics, Machine Learning, and AI on GCP en Français

problem solving skills in python

현대 로봇공학, 강좌 5: 로봇 매니퓰레이션 및 차륜형 이동 로봇

Why people choose coursera for their career.

problem solving skills in python

Learner reviews

Showing 3 of 221

221 reviews

Reviewed on Oct 6, 2022

It is a good course for beginners. i really like this course

Reviewed on Sep 26, 2021

Easy to follow for people at any knowledge level, and still more in-depth to how everything works than my 3 year programming course was.

Reviewed on Jul 12, 2020

This Course was very interesting to complete. It taught me many problem solving techniques, and had a great time to learn Python programming.

New to Software Development? Start here.

Placeholder

Open new doors with Coursera Plus

Unlimited access to 7,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions

What resources can i access if i take this course for free.

All learners can access all the videos, assessments, interactive learning objects (ILO), virtual machine (VM) image, and forums for free.

Can I take this course for university credit?

No. Unfortunately, the PVG course does not qualify for credit at the University of Alberta.

When will I have access to the lectures and assignments?

Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:

The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.

The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

What will I get if I purchase the Certificate?

When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

What is the refund policy?

You will be eligible for a full refund until two weeks after your payment date, or (for courses that have just launched) until two weeks after the first session of the course begins, whichever is later. You cannot receive a refund once you’ve earned a Course Certificate, even if you complete the course within the two-week refund period. See our full refund policy Opens in a new tab .

Is financial aid available?

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

More questions

  • Python Basics
  • Interview Questions
  • Python Quiz
  • Popular Packages

Python Projects

  • Practice Python
  • AI With Python
  • Learn Python3
  • Python Automation
  • Python Web Dev
  • DSA with Python
  • Python OOPs
  • Dictionaries

Python Exercise with Practice Questions and Solutions

  • Python List Exercise
  • Python String Exercise
  • Python Tuple Exercise
  • Python Dictionary Exercise
  • Python Set Exercise

Python Matrix Exercises

  • Python program to a Sort Matrix by index-value equality count
  • Python Program to Reverse Every Kth row in a Matrix
  • Python Program to Convert String Matrix Representation to Matrix
  • Python - Count the frequency of matrix row length
  • Python - Convert Integer Matrix to String Matrix
  • Python Program to Convert Tuple Matrix to Tuple List
  • Python - Group Elements in Matrix
  • Python - Assigning Subsequent Rows to Matrix first row elements
  • Adding and Subtracting Matrices in Python
  • Python - Convert Matrix to dictionary
  • Python - Convert Matrix to Custom Tuple Matrix
  • Python - Matrix Row subset
  • Python - Group similar elements into Matrix
  • Python - Row-wise element Addition in Tuple Matrix
  • Create an n x n square matrix, where all the sub-matrix have the sum of opposite corner elements as even

Python Functions Exercises

  • Python splitfields() Method
  • How to get list of parameters name from a function in Python?
  • How to Print Multiple Arguments in Python?
  • Python program to find the power of a number using recursion
  • Sorting objects of user defined class in Python
  • Assign Function to a Variable in Python
  • Returning a function from a function - Python
  • What are the allowed characters in Python function names?
  • Defining a Python function at runtime
  • Explicitly define datatype in a Python function
  • Functions that accept variable length key value pair as arguments
  • How to find the number of arguments in a Python function?
  • How to check if a Python variable exists?
  • Python - Get Function Signature
  • Python program to convert any base to decimal by using int() method

Python Lambda Exercises

  • Python - Lambda Function to Check if value is in a List
  • Difference between Normal def defined function and Lambda
  • Python: Iterating With Python Lambda
  • How to use if, else & elif in Python Lambda Functions
  • Python - Lambda function to find the smaller value between two elements
  • Lambda with if but without else in Python
  • Python Lambda with underscore as an argument
  • Difference between List comprehension and Lambda in Python
  • Nested Lambda Function in Python
  • Python lambda
  • Python | Sorting string using order defined by another string
  • Python | Find fibonacci series upto n using lambda
  • Overuse of lambda expressions in Python
  • Python program to count Even and Odd numbers in a List
  • Intersection of two arrays in Python ( Lambda expression and filter function )

Python Pattern printing Exercises

  • Simple Diamond Pattern in Python
  • Python - Print Heart Pattern
  • Python program to display half diamond pattern of numbers with star border
  • Python program to print Pascal's Triangle
  • Python program to print the Inverted heart pattern
  • Python Program to print hollow half diamond hash pattern
  • Program to Print K using Alphabets
  • Program to print half Diamond star pattern
  • Program to print window pattern
  • Python Program to print a number diamond of any given size N in Rangoli Style
  • Python program to right rotate n-numbers by 1
  • Python Program to print digit pattern
  • Print with your own font using Python !!
  • Python | Print an Inverted Star Pattern
  • Program to print the diamond shape

Python DateTime Exercises

  • Python - Iterating through a range of dates
  • How to add time onto a DateTime object in Python
  • How to add timestamp to excel file in Python
  • Convert string to datetime in Python with timezone
  • Isoformat to datetime - Python
  • Python datetime to integer timestamp
  • How to convert a Python datetime.datetime to excel serial date number
  • How to create filename containing date or time in Python
  • Convert "unknown format" strings to datetime objects in Python
  • Extract time from datetime in Python
  • Convert Python datetime to epoch
  • Python program to convert unix timestamp string to readable date
  • Python - Group dates in K ranges
  • Python - Divide date range to N equal duration
  • Python - Last business day of every month in year

Python OOPS Exercises

  • Get index in the list of objects by attribute in Python
  • Python program to build flashcard using class in Python
  • How to count number of instances of a class in Python?
  • Shuffle a deck of card with OOPS in Python
  • What is a clean and Pythonic way to have multiple constructors in Python?
  • How to Change a Dictionary Into a Class?
  • How to create an empty class in Python?
  • Student management system in Python
  • How to create a list of object in Python class

Python Regex Exercises

  • Validate an IP address using Python without using RegEx
  • Python program to find the type of IP Address using Regex
  • Converting a 10 digit phone number to US format using Regex in Python
  • Python program to find Indices of Overlapping Substrings
  • Python program to extract Strings between HTML Tags
  • Python - Check if String Contain Only Defined Characters using Regex
  • How to extract date from Excel file using Pandas?
  • Python program to find files having a particular extension using RegEx
  • How to check if a string starts with a substring using regex in Python?
  • How to Remove repetitive characters from words of the given Pandas DataFrame using Regex?
  • Extract punctuation from the specified column of Dataframe using Regex
  • Extract IP address from file using Python
  • Python program to Count Uppercase, Lowercase, special character and numeric values using Regex
  • Categorize Password as Strong or Weak using Regex in Python
  • Python - Substituting patterns in text using regex

Python LinkedList Exercises

  • Python program to Search an Element in a Circular Linked List
  • Implementation of XOR Linked List in Python
  • Pretty print Linked List in Python
  • Python Library for Linked List
  • Python | Stack using Doubly Linked List
  • Python | Queue using Doubly Linked List
  • Program to reverse a linked list using Stack
  • Python program to find middle of a linked list using one traversal
  • Python Program to Reverse a linked list

Python Searching Exercises

  • Binary Search (bisect) in Python
  • Python Program for Linear Search
  • Python Program for Anagram Substring Search (Or Search for all permutations)
  • Python Program for Binary Search (Recursive and Iterative)
  • Python Program for Rabin-Karp Algorithm for Pattern Searching
  • Python Program for KMP Algorithm for Pattern Searching

Python Sorting Exercises

  • Python Code for time Complexity plot of Heap Sort
  • Python Program for Stooge Sort
  • Python Program for Recursive Insertion Sort
  • Python Program for Cycle Sort
  • Bisect Algorithm Functions in Python
  • Python Program for BogoSort or Permutation Sort
  • Python Program for Odd-Even Sort / Brick Sort
  • Python Program for Gnome Sort
  • Python Program for Cocktail Sort
  • Python Program for Bitonic Sort
  • Python Program for Pigeonhole Sort
  • Python Program for Comb Sort
  • Python Program for Iterative Merge Sort
  • Python Program for Binary Insertion Sort
  • Python Program for ShellSort

Python DSA Exercises

  • Saving a Networkx graph in GEXF format and visualize using Gephi
  • Dumping queue into list or array in Python
  • Python program to reverse a stack
  • Python - Stack and StackSwitcher in GTK+ 3
  • Multithreaded Priority Queue in Python
  • Python Program to Reverse the Content of a File using Stack
  • Priority Queue using Queue and Heapdict module in Python
  • Box Blur Algorithm - With Python implementation
  • Python program to reverse the content of a file and store it in another file
  • Check whether the given string is Palindrome using Stack
  • Take input from user and store in .txt file in Python
  • Change case of all characters in a .txt file using Python
  • Finding Duplicate Files with Python

Python File Handling Exercises

  • Python Program to Count Words in Text File
  • Python Program to Delete Specific Line from File
  • Python Program to Replace Specific Line in File
  • Python Program to Print Lines Containing Given String in File
  • Python - Loop through files of certain extensions
  • Compare two Files line by line in Python
  • How to keep old content when Writing to Files in Python?
  • How to get size of folder using Python?
  • How to read multiple text files from folder in Python?
  • Read a CSV into list of lists in Python
  • Python - Write dictionary of list to CSV
  • Convert nested JSON to CSV in Python
  • How to add timestamp to CSV file in Python

Python CSV Exercises

  • How to create multiple CSV files from existing CSV file using Pandas ?
  • How to read all CSV files in a folder in Pandas?
  • How to Sort CSV by multiple columns in Python ?
  • Working with large CSV files in Python
  • How to convert CSV File to PDF File using Python?
  • Visualize data from CSV file in Python
  • Python - Read CSV Columns Into List
  • Sorting a CSV object by dates in Python
  • Python program to extract a single value from JSON response
  • Convert class object to JSON in Python
  • Convert multiple JSON files to CSV Python
  • Convert JSON data Into a Custom Python Object
  • Convert CSV to JSON using Python

Python JSON Exercises

  • Flattening JSON objects in Python
  • Saving Text, JSON, and CSV to a File in Python
  • Convert Text file to JSON in Python
  • Convert JSON to CSV in Python
  • Convert JSON to dictionary in Python
  • Python Program to Get the File Name From the File Path
  • How to get file creation and modification date or time in Python?
  • Menu driven Python program to execute Linux commands
  • Menu Driven Python program for opening the required software Application
  • Open computer drives like C, D or E using Python

Python OS Module Exercises

  • Rename a folder of images using Tkinter
  • Kill a Process by name using Python
  • Finding the largest file in a directory using Python
  • Python - Get list of running processes
  • Python - Get file id of windows file
  • Python - Get number of characters, words, spaces and lines in a file
  • Change current working directory with Python
  • How to move Files and Directories in Python
  • How to get a new API response in a Tkinter textbox?
  • Build GUI Application for Guess Indian State using Tkinter Python
  • How to stop copy, paste, and backspace in text widget in tkinter?
  • How to temporarily remove a Tkinter widget without using just .place?
  • How to open a website in a Tkinter window?

Python Tkinter Exercises

  • Create Address Book in Python - Using Tkinter
  • Changing the colour of Tkinter Menu Bar
  • How to check which Button was clicked in Tkinter ?
  • How to add a border color to a button in Tkinter?
  • How to Change Tkinter LableFrame Border Color?
  • Looping through buttons in Tkinter
  • Visualizing Quick Sort using Tkinter in Python
  • How to Add padding to a tkinter widget only on one side ?
  • Python NumPy - Practice Exercises, Questions, and Solutions
  • Pandas Exercises and Programs
  • How to get the Daily News using Python
  • How to Build Web scraping bot in Python
  • Scrape LinkedIn Using Selenium And Beautiful Soup in Python
  • Scraping Reddit with Python and BeautifulSoup
  • Scraping Indeed Job Data Using Python

Python Web Scraping Exercises

  • How to Scrape all PDF files in a Website?
  • How to Scrape Multiple Pages of a Website Using Python?
  • Quote Guessing Game using Web Scraping in Python
  • How to extract youtube data in Python?
  • How to Download All Images from a Web Page in Python?
  • Test the given page is found or not on the server Using Python
  • How to Extract Wikipedia Data in Python?
  • How to extract paragraph from a website and save it as a text file?
  • Automate Youtube with Python
  • Controlling the Web Browser with Python
  • How to Build a Simple Auto-Login Bot with Python
  • Download Google Image Using Python and Selenium
  • How To Automate Google Chrome Using Foxtrot and Python

Python Selenium Exercises

  • How to scroll down followers popup in Instagram ?
  • How to switch to new window in Selenium for Python?
  • Python Selenium - Find element by text
  • How to scrape multiple pages using Selenium in Python?
  • Python Selenium - Find Button by text
  • Web Scraping Tables with Selenium and Python
  • Selenium - Search for text on page
  • Python Projects - Beginner to Advanced

Python Exercise: Practice makes you perfect in everything. This proverb always proves itself correct. Just like this, if you are a Python learner, then regular practice of Python exercises makes you more confident and sharpens your skills. So, to test your skills, go through these Python exercises with solutions.

Python is a widely used general-purpose high-level language that can be used for many purposes like creating GUI, web Scraping, web development, etc. You might have seen various Python tutorials that explain the concepts in detail but that might not be enough to get hold of this language. The best way to learn is by practising it more and more.

The best thing about this Python practice exercise is that it helps you learn Python using sets of detailed programming questions from basic to advanced. It covers questions on core Python concepts as well as applications of Python in various domains. So if you are at any stage like beginner, intermediate or advanced this Python practice set will help you to boost your programming skills in Python.

problem solving skills in python

List of Python Programming Exercises

In the below section, we have gathered chapter-wise Python exercises with solutions. So, scroll down to the relevant topics and try to solve the Python program practice set.

Python List Exercises

  • Python program to interchange first and last elements in a list
  • Python program to swap two elements in a list
  • Python | Ways to find length of list
  • Maximum of two numbers in Python
  • Minimum of two numbers in Python

>> More Programs on List

Python String Exercises

  • Python program to check whether the string is Symmetrical or Palindrome
  • Reverse words in a given String in Python
  • Ways to remove i’th character from string in Python
  • Find length of a string in python (4 ways)
  • Python program to print even length words in a string

>> More Programs on String

Python Tuple Exercises

  • Python program to Find the size of a Tuple
  • Python – Maximum and Minimum K elements in Tuple
  • Python – Sum of tuple elements
  • Python – Row-wise element Addition in Tuple Matrix
  • Create a list of tuples from given list having number and its cube in each tuple

>> More Programs on Tuple

Python Dictionary Exercises

  • Python | Sort Python Dictionaries by Key or Value
  • Handling missing keys in Python dictionaries
  • Python dictionary with keys having multiple inputs
  • Python program to find the sum of all items in a dictionary
  • Python program to find the size of a Dictionary

>> More Programs on Dictionary

Python Set Exercises

  • Find the size of a Set in Python
  • Iterate over a set in Python
  • Python – Maximum and Minimum in a Set
  • Python – Remove items from Set
  • Python – Check if two lists have atleast one element common

>> More Programs on Sets

  • Python – Assigning Subsequent Rows to Matrix first row elements
  • Python – Group similar elements into Matrix

>> More Programs on Matrices

>> More Programs on Functions

  • Python | Find the Number Occurring Odd Number of Times using Lambda expression and reduce function

>> More Programs on Lambda

  • Programs for printing pyramid patterns in Python

>> More Programs on Python Pattern Printing

  • Python program to get Current Time
  • Get Yesterday’s date using Python
  • Python program to print current year, month and day
  • Python – Convert day number to date in particular year
  • Get Current Time in different Timezone using Python

>> More Programs on DateTime

>> More Programs on Python OOPS

  • Python – Check if String Contain Only Defined Characters using Regex

>> More Programs on Python Regex

>> More Programs on Linked Lists

>> More Programs on Python Searching

  • Python Program for Bubble Sort
  • Python Program for QuickSort
  • Python Program for Insertion Sort
  • Python Program for Selection Sort
  • Python Program for Heap Sort

>> More Programs on Python Sorting

  • Program to Calculate the Edge Cover of a Graph
  • Python Program for N Queen Problem

>> More Programs on Python DSA

  • Read content from one file and write it into another file
  • Write a dictionary to a file in Python
  • How to check file size in Python?
  • Find the most repeated word in a text file
  • How to read specific lines from a File in Python?

>> More Programs on Python File Handling

  • Update column value of CSV in Python
  • How to add a header to a CSV file in Python?
  • Get column names from CSV using Python
  • Writing data from a Python List to CSV row-wise

>> More Programs on Python CSV

>> More Programs on Python JSON

  • Python Script to change name of a file to its timestamp

>> More Programs on OS Module

  • Python | Create a GUI Marksheet using Tkinter
  • Python | ToDo GUI Application using Tkinter
  • Python | GUI Calendar using Tkinter
  • File Explorer in Python using Tkinter
  • Visiting Card Scanner GUI Application using Python

>> More Programs on Python Tkinter

NumPy Exercises

  • How to create an empty and a full NumPy array?
  • Create a Numpy array filled with all zeros
  • Create a Numpy array filled with all ones
  • Replace NumPy array elements that doesn’t satisfy the given condition
  • Get the maximum value from given matrix

>> More Programs on NumPy

Pandas Exercises

  • Make a Pandas DataFrame with two-dimensional list | Python
  • How to iterate over rows in Pandas Dataframe
  • Create a pandas column using for loop
  • Create a Pandas Series from array
  • Pandas | Basic of Time Series Manipulation

>> More Programs on Python Pandas

>> More Programs on Web Scraping

  • Download File in Selenium Using Python
  • Bulk Posting on Facebook Pages using Selenium
  • Google Maps Selenium automation using Python
  • Count total number of Links In Webpage Using Selenium In Python
  • Extract Data From JustDial using Selenium

>> More Programs on Python Selenium

  • Number guessing game in Python
  • 2048 Game in Python
  • Get Live Weather Desktop Notifications Using Python
  • 8-bit game using pygame
  • Tic Tac Toe GUI In Python using PyGame

>> More Projects in Python

In closing, we just want to say that the practice or solving Python problems always helps to clear your core concepts and programming logic. Hence, we have designed this Python exercises after deep research so that one can easily enhance their skills and logic abilities.

Please Login to comment...

Similar reads, improve your coding skills with practice.

 alt=

What kind of Experience do you want to share?

Python Wife Logo

  • Computer Vision
  • Problem Solving in Python
  • Intro to DS and Algo
  • Analysis of Algorithm
  • Dictionaries
  • Linked Lists
  • Doubly Linked Lists
  • Circular Singly Linked List
  • Circular Doubly Linked List
  • Tree/Binary Tree
  • Binary Search Tree
  • Binary Heap
  • Sorting Algorithms
  • Searching Algorithms
  • Single-Source Shortest Path
  • Topological Sort
  • Dijkstra’s
  • Bellman-Ford’s
  • All Pair Shortest Path
  • Minimum Spanning Tree
  • Kruskal & Prim’s

Problem-solving is the process of identifying a problem, creating an algorithm to solve the given problem, and finally implementing the algorithm to develop a computer program .

An algorithm is a process or set of rules to be followed while performing calculations or other problem-solving operations. It is simply a set of steps to accomplish a certain task.

In this article, we will discuss 5 major steps for efficient problem-solving. These steps are:

  • Understanding the Problem
  • Exploring Examples
  • Breaking the Problem Down
  • Solving or Simplification
  • Looking back and Refactoring

While understanding the problem, we first need to closely examine the language of the question and then proceed further. The following questions can be helpful while understanding the given problem at hand.

  • Can the problem be restated in our own words?
  • What are the inputs that are needed for the problem?
  • What are the outputs that come from the problem?
  • Can the outputs be determined from the inputs? In other words, do we have enough information to solve the given problem?
  • What should the important pieces of data be labeled?

Example : Write a function that takes two numbers and returns their sum.

  • Implement addition
  • Integer, Float, etc.

Once we have understood the given problem, we can look up various examples related to it. The examples should cover all situations that can be encountered while the implementation.

  • Start with simple examples.
  • Progress to more complex examples.
  • Explore examples with empty inputs.
  • Explore examples with invalid inputs.

Example : Write a function that takes a string as input and returns the count of each character

After exploring examples related to the problem, we need to break down the given problem. Before implementation, we write out the steps that need to be taken to solve the question.

Once we have laid out the steps to solve the problem, we try to find the solution to the question. If the solution cannot be found, try to simplify the problem instead.

The steps to simplify a problem are as follows:

  • Find the core difficulty
  • Temporarily ignore the difficulty
  • Write a simplified solution
  • Then incorporate that difficulty

Since we have completed the implementation of the problem, we now look back at the code and refactor it if required. It is an important step to refactor the code so as to improve efficiency.

The following questions can be helpful while looking back at the code and refactoring:

  • Can we check the result?
  • Can we derive the result differently?
  • Can we understand it at a glance?
  • Can we use the result or mehtod for some other problem?
  • Can you improve the performance of the solution?
  • How do other people solve the problem?

Trending Posts You Might Like

  • File Upload / Download with Streamlit
  • Seaborn with STREAMLIT
  • Dijkstra’s Algorithm in Python
  • Greedy Algorithms in Python

Author : Bhavya

IMAGES

  1. Python Problem Solving

    problem solving skills in python

  2. Problem Solving Process in Python

    problem solving skills in python

  3. Live

    problem solving skills in python

  4. Wooz Python Programming: Number Sequence (수열, 2020 103 Mid05)

    problem solving skills in python

  5. Python Algorithmic Problem Solving: brief important questions and

    problem solving skills in python

  6. Problem Solving with Python 3.7 Edition : A beginner's guide to Python

    problem solving skills in python

VIDEO

  1. Problem Solving Using Python Programming

  2. Problem solving with recursion in python

  3. Python Continue Statement: Mastering Control Flow for Streamlined Programming

  4. Solving a Python problem!

  5. Python Problem Solving Class 2 (List)

  6. Python Problem solving Question #technologies #leetcode #hackerrank #python3 #problemsolving

COMMENTS

  1. Python Practice for Beginners: 15 Hands-On Problems

    Python Practice Problem 1: Average Expenses for Each Semester. John has a list of his monthly expenses from last year: He wants to know his average expenses for each semester. Using a for loop, calculate John's average expenses for the first semester (January to June) and the second semester (July to December).

  2. Solve Python

    Easy Python (Basic) Max Score: 10 Success Rate: 89.70%. Solve Challenge. Arithmetic Operators. ... Skills. Problem Solving (Basic) Python (Basic) Problem Solving (Advanced) Python (Intermediate) Difficulty. Easy. Medium. Hard. Subdomains. Introduction. Basic Data Types. Strings.

  3. Python Exercises, Practice, Challenges

    Each exercise has 10-20 Questions. The solution is provided for every question. Practice each Exercise in Online Code Editor. These Python programming exercises are suitable for all Python developers. If you are a beginner, you will have a better understanding of Python after solving these exercises. Below is the list of exercises.

  4. Python Practice Problems: Get Ready for Your Next Interview

    While this solution takes a literal approach to solving the Caesar cipher problem, you could also use a different approach modeled after the .translate() solution in practice problem 2. Solution 2. The second solution to this problem mimics the behavior of Python's built-in method .translate(). Instead of shifting each letter by a given ...

  5. Python Basics: Problem Solving with Code

    This course is part of the Python Basics for Online Research Specialization. When you enroll in this course, you'll also be enrolled in this Specialization. Learn new concepts from industry experts. Gain a foundational understanding of a subject or tool. Develop job-relevant skills with hands-on projects.

  6. Mastering Algorithms for Problem Solving in Python

    Algorithms for Coding Interviews in Python. As a developer, mastering the concepts of algorithms and being proficient in implementing them is essential to improving problem-solving skills. This course aims to equip you with an in-depth understanding of algorithms and how they can be utilized for problem-solving in Python.

  7. Online Python Challenges

    The tasks are meant to be challenging for beginners. If you find them too difficult, try completing our lessons for beginners first. All challenges have hints and curated example solutions. They also work on your phone, so you can practice Python on the go. Click a challenge to start. Practice your Python skills with online programming challenges.

  8. The Python Problem-Solver's Toolkit: 300 Hands-On Exercises

    Description. "The Python Problem-Solver's Toolkit: 300 Hands-On Exercises for Mastery" is a comprehensive and engaging course designed to empower learners with advanced Python programming skills and effective problem-solving techniques. Whether you are a beginner looking to dive into the world of coding or an experienced Python programmer ...

  9. Python Programming Bootcamp: Learn Python Through Problem Solving

    Learn how to Solve Real Programming Problems with a Focus on Teaching Problem Solving Skills. Understand Python as an Object Oriented and Functional Programming Language. Create GUI Applications using TkInter, Kivy and soon PyQt. Create Applications that Utilize Databases. We will Expand into Algorithms, Django, Flask and Machine Learning.

  10. Hands-on Tutorial: How To Improve Your Problem-Solving Skills As A

    #Step 1 — Take time to understand the problem. The first step to solving any problem is to understand the problem being solved. This means you're able to articulate the problem fully in your own words. Don't get disheartened if you can't, it's part of the process of understanding.

  11. 10 Python Practice Exercises for Beginners with Solutions

    Exercise 1: User Input and Conditional Statements. Write a program that asks the user for a number then prints the following sentence that number of times: 'I am back to check on my skills!'. If the number is greater than 10, print this sentence instead: 'Python conditions and loops are a piece of cake.'.

  12. How to Improve Programming Skills in Python

    As V. Anton Spraul said, "Reduce the problem to the point where you know how to solve it and write the solution. Then expand the problem slightly and rewrite the solution to match, and keep going until you are back where you started.". Practice your skills every day. Lastly, the most important way to develop your Python programming skills ...

  13. 11 Beginner Tips for Learning Python Programming

    Make Something. Tip #10: Build Something, Anything. Tip #11: Contribute to Open Source. Go Forth and Learn! Remove ads. Watch Now This tutorial has a related video course created by the Real Python team. Watch it together with the written tutorial to deepen your understanding: 11 Beginner Tips for Learning Python.

  14. Mastering 4 critical SKILLS using Python

    The course covers basic to advanced modern Python 3 syntax. Beginners will learn a lot! The course helps you master the 4 most important skills for a programmer. Programming skills. Problem-solving skills: rarely covered by other courses. Project building skills: partially covered by other courses.

  15. Python Tutorial

    This Python Tutorial will help you learn Python programming language most efficiently from basics to advanced (like Web-scraping, Django, Learning, etc.) ... These quizzes can enhance your ability to solve similar questions and improve your problem-solving skills. Here are some quiz articles related to Python Tutorial: Python MCQs; Python ...

  16. 7 Ways to Take Your New Python Skills to the Next Level

    Not only do you get to use your Python skills, but you also work on your problem-solving skills — which are more important than your Python skills. There are many ways to further develop your skills. A huge part of programming is problem-solving, and coding challenges will drill you. Not only will you practice problem-solving, but you have to ...

  17. Python Challenges: Unlocking Your Problem-Solving Skills

    Python challenge. Python, renowned for its simplicity and versatility, has gained popularity among programmers worldwide. To truly master the language, one must not only understand its syntax but ...

  18. Python Basic Exercise for Beginners with Solutions

    Python essential exercise is to help Python beginners to quickly learn basic skills by solving the questions.When you complete each question, you get more familiar with a control structure, loops, string, and list in Python. ... This Python essential exercise is to help Python beginners to learn necessary Python skills quickly. Immerse yourself ...

  19. Problem Solving, Python Programming, and Video Games

    This course is an introduction to computer science and programming in Python. Upon successful completion of this course, you will be able to: 1. Take a new computational problem and solve it, using several problem solving techniques including abstraction and problem decomposition. 2. Follow a design creation process that includes: descriptions ...

  20. Data Science Skills 101: How to Solve Any Problem, Part II

    The first part of this series discussed the growing need for problem-solving skills. As more of our world is automated with AI these skills are more important than ever. This article continues to outline practical strategies for solving any problem. Three more techniques are outlined below with real world examples of their application.

  21. Python Exercise with Practice Questions and Solutions

    The best way to learn is by practising it more and more. The best thing about this Python practice exercise is that it helps you learn Python using sets of detailed programming questions from basic to advanced. It covers questions on core Python concepts as well as applications of Python in various domains.

  22. Best Way to Solve Python Coding Questions

    In this tutorial, we learned that solving a Python problem using different methods can enhance our coding and problem-solving skills by broadening our knowledge base. We looked at an example python coding question and went through the steps of solving it. We first planned how we were going to solve it using pseudocode.

  23. Python Exercises for Beginners: Solve 100+ Coding Challenges

    Solve 100+ Exercises to Take Your Python Skills to the Next Level. Solve more than 100 exercises and improve your problem-solving and coding skills. Learn new Python tools such as built-in functions and modules. Apply your knowledge of Python to solve practical coding challenges. Understand how the code works line by line behind the scenes.

  24. Problem Solving in Python

    Problem Solving in Python. Problem-solving is the process of identifying a problem, creating an algorithm to solve the given problem, and finally implementing the algorithm to develop a computer program. An algorithm is a process or set of rules to be followed while performing calculations or other problem-solving operations.

  25. Python Quest: 60 Challenging Question to Enhance Your Skill

    Description. The Practice Test Course in Python: Algorithmic Problem-Solving is a specialized program crafted to elevate your algorithmic thinking and problem-solving skills using Python. With four challenging practice tests, each containing 15 algorithmic questions, this course is designed to push your limits, enhance your logical reasoning ...