Python is one of the most popular programming languages in the world with a vast community of developers, thanks to its simple syntax. Whether you are just starting or looking to improve your Programming skills, practicing hands-on programs is one of the best ways to improve your proficiency and confidence in programming. In this article, I’ve listed 20 Python programs to practice building your skills and knowledge.
Analyze each of these programs and try to implement them by yourself. These Python practice problems will give you the knowledge and confidence to easily create your own python programs. So let’s dive in and start practicing.
1. Python program to convert Celsius to Fahrenheit
celsius = float(input(“Enter temperature in Celsius: “))
fah = (celsius * 9/5) + 32
print(“Temperature in Fahrenheit: “,fah)
Output
Enter temperature in Celsius: 40
Temperature in Fahrenheit: 104.0
2. Python program to count vowels in a string
def count_vowel(string):
vowels = “aeiouAEIOU”
count = 0
for letter in string:
if letter in vowels:
count += 1
return count
string = “I Love learning python”
print(“Total vowels =”,count_vowel(string))
Output
Total vowels = 7
3. Python program to replace old domain with new in any outdated email address
def replace_domain(email, old_domain, new_domain):
if “@”+old_domain in email:
i = email.index(“@”+old_domain)
new_email = email[:i] + “@”+new_domain
return new_email
return email
print(“New Email: “,replace_domain(‘info@olddomain.com’,”olddomain.com”,
“newdomain.com”))
Output
New Email: info@newdomain.com
4. Python program to calculate the area of a circle given the radius
from math import pi
def calc_area(radius):
area = pi * (radius ** 2)
return area
radius = float(input(“Enter radius of circle: “))
print(“Area of circle =”, calc_area(radius))
Output
Enter radius of circle: 5
Area of circle = 78.53981633974483
5. Python program to find the factorial of a given number
def find_fact(num):
factorial = 1
if num < 1:
print(“Factorial of negative number does not exist!”)
elif num == 0:
print(“Factorial of 0 is 1!”)
else:
for i in range(1,num+1):
factorial = factorial * i
print(“Factorial of”, num, “is = “, factorial)
num = int(input(“Enter a number: “))
find_fact(num)
Output
Enter a number: 6
Factorial of 6 is = 720
6. Python program to reverse a string
def reverse_string(string):
return string[::-1]
string = input(“Enter a string: “)
print(“Reverse: “, reverse_string(string))
Output
Enter a string: Python
Reverse: nohtyP
7. Python program to check if a string is a palindrome or not
def check_palindrome(string):
reverse = string[::-1]
if string == reverse:
print(string + ” is a palindrome!”)
else:
print(string + ” is not a palindrome!”)
string = input(“Enter a string: “)
check_palindrome(string)
Output
Enter a string: noon
noon is a palindrome!
8. Python program to find the largest element in an array
def find_largest(array):
largest = -1
for num in array:
if num > largest:
largest = num
print(“Largest =”,largest)
total = int(input(“Enter total numbers: “))
array = []
for i in range(total):
array.append(int(input(f”Enter number {i+1}: “)))
find_largest(array)
Output
Enter total numbers: 5
Enter number 1: 65
Enter number 2: 23
Enter number 3: 12
Enter number 4: 67
Enter number 5: 34
Largest = 67
9. Python program to sort an array in ascending order
total = int(input(“Enter total elements: “))
array = []
for i in range(total):
num = int(input(f”Enter element {i+1}: “))
array.append(num)
array.sort()
print(array)
Output
Enter total elements: 5
Enter element 1: 1
Enter element 2: 5
Enter element 3: 2
Enter element 4: 7
Enter element 5: 4
[1, 2, 4, 5, 7]
10. Python program to print the Fibonacci Series
def fibonacci_seq(num):
a = 0 # start with 0 (first number)
b = 1 # second number which is 1
if num == 1:
print(a)
elif num == 2:
print(a, b, end=” “)
else:
print(a, b, end=” “)
for i in range(num-2):
c = a + b # sum a + b
a = b # store the value of b in a
b = c # store the value of c in b and then print b
print(b, end=” “)
num = int(input(“Enter a number: “))
print(“The Fibonacci Sequence =”, end=” “)
fibonacci_seq(num)
Output
Enter a number: 10
The Fibonacci Sequence = 0 1 1 2 3 5 8 13 21 34
11. Python program to find the circumference of a circle
from math import pi
def find_circumference(radius):
circumference = 2 * pi * radius
return circumference
radius = float(input(“Enter the radius of the circle: “))
print(f”The circumference of the circle is: {find_circumference(radius):.2f}”)
Output
Enter the radius of the circle: 4
The circumference of the circle is: 25.13
12. Python program to check if a number is perfect or not
def find_is_perfect(num):
sum_of_divisors = 0
for i in range(1, num):
if num % i == 0:
sum_of_divisors += i
if sum_of_divisors == num:
print(f”{num} is a perfect number!”)
else:
print(f”{num} is not a perfect number!”)
num = int(input(“Enter a number: “))
find_is_perfect(num)
Output
Enter a number: 6
6 is a perfect number!
13. Python program to find the sum of all odd numbers in a list
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_sum = 0
for number in numbers:
if number % 2 != 0:
odd_sum += number
print(f”Sum = {odd_sum}”)
Output
Sum = 25
14. Python program to separate even and odd numbers from a list
t = int(input(“Enter total numbers: “))
my_list = []
for i in range(t):
n = int(input(f”Enter number {i+1}: “))
my_list.append(n)
def even_numbers(l):
even_list = []
for i in my_list:
if i % 2 == 0:
even_list.append(i)
return even_list
def odd_numbers(l):
odd_list = []
for i in my_list:
if i % 2 != 0:
odd_list.append(i)
return odd_list
print(“Even numbers =”,even_numbers(my_list),”Odd numbers =”,odd_numbers(my_list))
Output
Enter total numbers: 10
Enter number 1: 8
Enter number 2: 2
Enter number 3: 1
Enter number 4: 5
Enter number 5: 9
Enter number 6: 3
Enter number 7: 4
Enter number 8: 6
Enter number 9: 7
Enter number 10: 2
Even numbers = [8, 2, 4, 6, 2] Odd numbers = [1, 5, 9, 3, 7]
15. Python program to reverse list characters
def reverse_list(l):
rev = []
for i in l:
rev.append(i[::-1])
return rev
my_list = [‘cba’, ‘fed’, ‘ihg’, ‘lkj’]
print(reverse_list(my_list))
Output
[‘cba’, ‘fed’, ‘ihg’, ‘lkj’]
16. Python program to reverse list items
numbers = [“Word1″,”Word2″,”Word3”]
rev = []
for i in range(len(numbers)):
rev.append(numbers.pop())
print(“Reversed: “,rev)
Output
Reversed: [‘Word3’, ‘Word2’, ‘Word1’]
16. Python program to find the square of list items
import math
total = int(input(“Enter total numbers: “))
numbers = list()
for i in range(total):
n = int(input(f”Enter list item {i+1}: “))
numbers.append(n)
squares = list()
for i in numbers:
sq = int(math.pow(i,2))
squares.append(sq)
print(“Squares of”,numbers,” are =”,squares)
Output
Enter total numbers: 5
Enter list item 1: 2
Enter list item 2: 3
Enter list item 3: 4
Enter list item 4: 5
Enter list item 5: 6
Squares of [2, 3, 4, 5, 6] are = [4, 9, 16, 25, 36]
17. Python program to copy a file
#copy file
import shutil
source_file = input(“Enter source file: “)
copy_file = input(“Enter copy file: “)
if shutil.copyfile(source_file,copy_file):
print(“File copied successfully!”)
else:
print(“Cannot copied the file!”)
Output
Enter source file: file.txt
Enter copy file: copy_file.txt
File copied successfully!
18. Python program to search a number in a list
numbers = [4,2,8,2,1,2,3]
num = int(input(“Enter a number to search: “))
found_count = 0
for i in numbers:
check = False
if i == num:
found_count += 1
check = True
print(check, i)
print(“\n”,num, “founded”, found_count, “times in”, numbers)
Output
Enter a number to search: 2
False 4
True 2
False 8
True 2
False 1
True 2
False 3
2 founded 3 times in [4, 2, 8, 2, 1, 2, 3]
19. Python program for a number guessing game
import random
computer = random.randint(1,100)
user = int(input(“Guess a number between 1 – 100 (in 5 tries): “))
tries = 5
steps = 0
tries = tries – 1
while True:
if tries > 0:
if user > computer:
steps = steps+1
print(“Too big, Guess smaller than”,user,”(tries remaining = “,tries,”)”)
user = int(input(“Guess again: “))
elif user < computer:
steps = steps+1
print(“Too small, Guess bigger than”,user,”(tries remaining = “,tries,”)”)
user = int(input(“Guess again: “))
elif user == computer:
steps = steps + 1
print(“Congratulations! you guessed the number in”,steps,”times”,”(tries remaining = “,tries,”)”)
break
tries = tries – 1
else:
print(“You lost!”,tries,”tries left, the number was”,computer)
break
Output
Guess a number between 1 – 100 (in 5 tries): 67
Too small, Guess bigger than 67 (tries remaining = 4 )
Guess again: 87
Too small, Guess bigger than 87 (tries remaining = 3 )
Guess again: 99
Too big, Guess smaller than 99 (tries remaining = 2 )
Guess again: 92
Too big, Guess smaller than 92 (tries remaining = 1 )
Guess again: 90
You lost! 0 tries left, the number was 89
20. Python program to implement rock paper scissors game
import random
choices = [“rock”,”paper”,”scissors”]
again = None
while again != ‘n’:
computer = random.choice(choices)
player = None
while player not in choices:
player = input(“rock, paper, or scissors: “).lower()
if player == computer:
print(“Computer = “,computer)
print(“Player =”,player)
print(“Tie!”)
# Player = Rock
elif player == “rock”:
if computer == “paper”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Lose!”)
if computer == “scissors”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Won!”)
# Player = Scissors
elif player == “scissors”:
if computer == “rock”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Lose!”)
if computer == “paper”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Won!”)
# Player = Paper
elif player == “paper”:
if computer == “scissors”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Lose!”)
if computer == “rock”:
print(“Computer =”,computer)
print(“Player =”,player)
print(“You Won!”)
again = input(“Play again (y/n): “).lower()
print(“Game Over!”)
Output
rock, paper, or scissors: rock
Computer = scissors
Player = rock
You Won!
Play again (y/n): y
rock, paper or scissors: paper
Computer = rock
Player = paper
You Won!
Play again (y/n): n
Game Over!
Conclusion
These were some of the Python programs to practice to brush up on your programming skills. These basic programs will not only help you develop a better understanding of the language, but they’ll also give you the practice you need to gain proficiency in Python programming. With a few of these basic python programs under your belt, you’ll be ready to move on to more complex projects and problems.
If you’ve any doubts or want to add something, feel free to let me know in the comments below
Happy coding!