Python Basic Exercise for Beginners (2024)

This Python essential exercise is to help Python beginners to learn necessary Python skills quickly.

Immerse yourself in the practice of Python’s foundational concepts, such as loops, control flow, data types, operators, list, strings, input-output, and built-in functions. This beginner’s exercise is certain to elevate your understanding of Python.

Also, See:

  • Python Quizzes: Solve quizzes to check your knowledge of fundamental concepts.
  • Python Basics: Learn the basics to solve this exercise.

What questions are included in this Python fundamental exercise?

  • The exercise contains 15 programs to solve. The hint and solution is provided for each question.
  • I have added tips and required learning resources for each question, which will help you solve the exercise. When you complete each question, you get more familiar with the basics of Python.

Use Online Code Editor to solve exercise questions.

This Python exercise covers questions on the following topics:

  • Python for loop and while loop
  • Python list, set, tuple, dictionary, input, and output

Also, try to solve the basic Python Quiz for beginners

Exercise 1: Calculate the multiplication and sum of two numbers

Given two integer numbers, return their product only if the product is equal to or lower than 1000. Otherwise, return their sum.

Given 1:

number1 = 20number2 = 30

Expected Output:

The result is 600

Given 2:

number1 = 40number2 = 30

Expected Output:

The result is 70

Refer:

  • Accept user input in Python
  • Calculate an Average in Python
Show Hint
  • Create a function that will take two numbers as parameters
  • Next, Inside a function, multiply two numbers and save their product in a product variable
  • Next, use the if condition to check if the product >1000. If yes, return the product
  • Otherwise, use the else block to calculate the sum of two numbers and return it.
Show Solution
def multiplication_or_sum(num1, num2): # calculate product of two number product = num1 * num2 # check if product is less then 1000 if product <= 1000: return product else: # product is greater than 1000 calculate sum return num1 + num2# first conditionresult = multiplication_or_sum(20, 30)print("The result is", result)# Second conditionresult = multiplication_or_sum(40, 30)print("The result is", result)

Exercise 2: Print the sum of the current number and the previous number

Write a program to iterate the first 10 numbers, and in each iteration, print the sum of the current and previous number.

Expected Output:

Printing current and previous number sum in a range(10)Current Number 0 Previous Number 0 Sum: 0Current Number 1 Previous Number 0 Sum: 1Current Number 2 Previous Number 1 Sum: 3Current Number 3 Previous Number 2 Sum: 5Current Number 4 Previous Number 3 Sum: 7Current Number 5 Previous Number 4 Sum: 9Current Number 6 Previous Number 5 Sum: 11Current Number 7 Previous Number 6 Sum: 13Current Number 8 Previous Number 7 Sum: 15Current Number 9 Previous Number 8 Sum: 17

Referencearticle for help:

  • Python range() function
  • Calculate sum and average in Python
Show Hint
  • Create a variable called previous_num and assign it to 0
  • Iterate the first 10 numbers one by one using for loop and range() function
  • Next, display the current number (i), previous number, and the addition of both numbers in each iteration of the loop. Finally, change the value of the previous number to the current number ( previous_num = i).
Show Solution
print("Printing current and previous number and their sum in a range(10)")previous_num = 0# loop from 1 to 10for i in range(1, 11): x_sum = previous_num + i print("Current Number", i, "Previous Number ", previous_num, " Sum: ", x_sum) # modify previous number # set it to the current number previous_num = i

Exercise 3: Print characters from a string that are present at an even index number

Write a program to accept a string from the user and display characters that are present at an even index number.

For example, str = "pynative" so you should display ‘p’, ‘n’, ‘t’, ‘v’.

Expected Output:

Orginal String is pynativePrinting only even index charspntv

Referencearticle for help: Python Input and Output

Show Hint
  • Use the Python input() function to accept a string from a user.
  • Calculate the length of the string using the len() function
  • Next, iterate each character of a string using for loop and range() function.
  • Use start = 0, stop = len(s)-1, and step =2. the step is 2 because we want only even index numbers
  • In each iteration of a loop, use s[i] to print characters present at the current even index number
Show Solution

Solution 1:

# accept input string from a userword = input('Enter word ')print("Original String:", word)# get the length of a stringsize = len(word)# iterate a each character of a string# start: 0 to start with first character# stop: size-1 because index starts with 0# step: 2 to get the characters present at even index like 0, 2, 4print("Printing only even index chars")for i in range(0, size - 1, 2): print("index[", i, "]", word[i])

Solution 2: Using list slicing

# accept input string from a userword = input('Enter word ')print("Original String:", word)# using list slicing# convert string to list# pick only even index charsx = list(word)for i in x[0::2]: print(i)

Exercise 4: Remove first n characters from a string

Write a program to remove characters from a string starting from zero up to n and return a new string.

For example:

  • remove_chars("pynative", 4) so output must be tive. Here, we need to remove the first four characters from a string.
  • remove_chars("pynative", 2) so output must be native. Here, we need to remove the first two characters from a string.

Note: n must be less than the length of the string.

Show Hint

Use string slicing to get the substring. For example, to remove the first four characters and the remaining use s[4:].

Show Solution
def remove_chars(word, n): print('Original string:', word) x = word[n:] return xprint("Removing characters from a string")print(remove_chars("pynative", 4))print(remove_chars("pynative", 2))

Also, try to solvePython String Exercise

Exercise 5: Check if the first and last number of a list is the same

Write a function to return True if the first and last number of a given list is same. If numbers are different then return False.

Given:

numbers_x = [10, 20, 30, 40, 10]numbers_y = [75, 65, 35, 75, 30]

Expected Output:

Given list: [10, 20, 30, 40, 10]result is Truenumbers_y = [75, 65, 35, 75, 30]result is False
Show Solution
def first_last_same(numberList): print("Given list:", numberList) first_num = numberList[0] last_num = numberList[-1] if first_num == last_num: return True else: return Falsenumbers_x = [10, 20, 30, 40, 10]print("result is", first_last_same(numbers_x))numbers_y = [75, 65, 35, 75, 30]print("result is", first_last_same(numbers_y))

Exercise 6:Display numbers divisible by 5 from a list

Iterate the given list of numbers and print only those numbers which are divisible by 5

Expected Output:

Given list is [10, 20, 33, 46, 55]Divisible by 5102055
Show Solution
num_list = [10, 20, 33, 46, 55]print("Given list:", num_list)print('Divisible by 5:')for num in num_list: if num % 5 == 0: print(num)

Also, try to solvePython list Exercise

Exercise 7: Return the count of a given substring from a string

Write a program to find how many times substring “Emma” appears in the given string.

Given:

str_x = "Emma is good developer. Emma is a writer"

Expected Output:

Emma appeared 2 times
Show Hint

Use string method count().

Show Solution

Solution 1: Use the count() method

str_x = "Emma is good developer. Emma is a writer"# use count method of a str classcnt = str_x.count("Emma")print(cnt)

Solution 2: Without string method

def count_emma(statement): print("Given String: ", statement) count = 0 for i in range(len(statement) - 1): count += statement[i: i + 4] == 'Emma' return countcount = count_emma("Emma is good developer. Emma is a writer")print("Emma appeared ", count, "times")

Exercise 8:Print the following pattern

1 2 2 3 3 3 4 4 4 4 5 5 5 5 5

Hint: Print Pattern using for loop

Show Solution
for num in range(10): for i in range(num): print (num, end=" ") #print number # new line after each row to display pattern correctly print("\n")

Exercise 9:Check Palindrome Number

Write a program to check if the given number is a palindrome number.

A palindrome number is a number that is the same after reverse. For example, 545, is the palindrome numbers

Expected Output:

original number 121Yes. given number is palindrome numberoriginal number 125No. given number is not palindrome number
Show Hint
  • Reverse the given number and save it in a different variable
  • Use the if condition to check if the original and reverse numbers are identical. If yes, return True.
Show Solution
def palindrome(number): print("original number", number) original_num = number # reverse the given number reverse_num = 0 while number > 0: reminder = number % 10 reverse_num = (reverse_num * 10) + reminder number = number // 10 # check numbers if original_num == reverse_num: print("Given number palindrome") else: print("Given number is not palindrome")palindrome(121)palindrome(125)

Exercise 10: Create a new list from two list using the following condition

Create a new list from two list using the following condition

Given two list of numbers, write a program to create a new list such that the new list should contain odd numbers from the first list and even numbers from the second list.

Given:

list1 = [10, 20, 25, 30, 35]list2 = [40, 45, 60, 75, 90]

Expected Output:

result list: [25, 35, 40, 60, 90]
Show Hint
  • Create an empty list named result_list
  • Iterate the first list using a for loop
  • In each iteration, check if the current number is odd number using num % 2 != 0 formula. If the current number is an odd number, add it to the result list
  • Now, Iterate the first list using a loop.
  • In each iteration, check if the current number is odd number using num % 2 == 0 formula. If the current number is an even number, add it to the result list
  • Print the result list
Show Solution
def merge_list(list1, list2): result_list = [] # iterate first list for num in list1: # check if current number is odd if num % 2 != 0: # add odd number to result list result_list.append(num) # iterate second list for num in list2: # check if current number is even if num % 2 == 0: # add even number to result list result_list.append(num) return result_listlist1 = [10, 20, 25, 30, 35]list2 = [40, 45, 60, 75, 90]print("result list:", merge_list(list1, list2))

Note: Try to solve the Python list Exercise

Exercise 11: Write a Program to extract each digit from an integer in the reverse order.

For example, If the given int is 7536, the output shall be “6 3 5 7“, with a space separating the digits.

Show Solution

Use while loop

number = 7536print("Given number", number)while number > 0: # get the last digit digit = number % 10 # remove the last digit and repeat the loop number = number // 10 print(digit, end=" ")

Exercise 12: Calculate income tax for the given income by adhering to the rules below

Taxable IncomeRate (in %)
First $10,0000
Next $10,00010
The remaining20

Expected Output:

For example, suppose the taxable income is 45000, and the income tax payable is

10000*0% + 10000*10% + 25000*20% = $6000.

Show Solution
income = 45000tax_payable = 0print("Given income", income)if income <= 10000: tax_payable = 0elif income <= 20000: # no tax on first 10,000 x = income - 10000 # 10% tax tax_payable = x * 10 / 100else: # first 10,000 tax_payable = 0 # next 10,000 10% tax tax_payable = 10000 * 10 / 100 # remaining 20%tax tax_payable += (income - 20000) * 20 / 100print("Total tax to pay is", tax_payable)

Exercise 13: Print multiplication table from 1 to 10

Expected Output:

1 2 3 4 5 6 7 8 9 10 2 4 6 8 10 12 14 16 18 20 3 6 9 12 15 18 21 24 27 30 4 8 12 16 20 24 28 32 36 40 5 10 15 20 25 30 35 40 45 50 6 12 18 24 30 36 42 48 54 60 7 14 21 28 35 42 49 56 63 70 8 16 24 32 40 48 56 64 72 80 9 18 27 36 45 54 63 72 81 90 10 20 30 40 50 60 70 80 90 100 

See: How two use nested loops in Python

Show Hint
  • Create the outer for loop to iterate numbers from 1 to 10. So, the total number of iterations of the outer loop is 10.
  • Create an inner loop to iterate 10 times.
  • For each outer loop iteration, the inner loop will execute ten times.
  • In the first iteration of the nested loop, the number is 1. In the next, it 2. and so on till 10.
  • In each iteration of an inner loop, we calculated the multiplication of two numbers. (current outer number and current inner number)
Show Solution
for i in range(1, 11): for j in range(1, 11): print(i * j, end=" ") print("\t\t")

Exercise 14: Print a downward Half-Pyramid Pattern of Star (asterisk)

* * * * * * * * * * * * * * *

Hint: Print Pattern using for loop

Show Solution
for i in range(6, 0, -1): for j in range(0, i - 1): print("*", end=' ') print(" ")

Exercise 15: Write a function called exponent(base, exp) that returns an int value of base raises to the power of exp.

Note here exp is a non-negative integer, and the base is an integer.

Expected output

Case 1:

base = 2exponent = 52 raises to the power of 5: 32 i.e. (2 *2 * 2 *2 *2 = 32)

Case 2:

base = 5exponent = 45 raises to the power of 4 is: 625 i.e. (5 *5 * 5 *5 = 625)
Show Solution
def exponent(base, exp): num = exp result = 1 while num > 0: result = result * base num = num - 1 print(base, "raises to the power of", exp, "is: ", result)exponent(5, 4)

Next Steps

I want to hear from you. What do you think of this basic exercise? If you have better alternative answers to the above questions, please help others by commenting on this exercise.

I have shown only 15 questions in this exercise because we have Topic-specific exercises to cover each topic exercise in detail. Please solve all Python exercises.

Python Basic Exercise for Beginners (2024)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Dean Jakubowski Ret

Last Updated:

Views: 5294

Rating: 5 / 5 (50 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Dean Jakubowski Ret

Birthday: 1996-05-10

Address: Apt. 425 4346 Santiago Islands, Shariside, AK 38830-1874

Phone: +96313309894162

Job: Legacy Sales Designer

Hobby: Baseball, Wood carving, Candle making, Jigsaw puzzles, Lacemaking, Parkour, Drawing

Introduction: My name is Dean Jakubowski Ret, I am a enthusiastic, friendly, homely, handsome, zealous, brainy, elegant person who loves writing and wants to share my knowledge and understanding with you.