Learn How To Make Python Pattern Programs With Examples

Aayushi Johari
Edureka
Published in
8 min readOct 1, 2019
Python Pattern Programs — Edureka

Python programming language is quite easy to learn. The implementation of various libraries with the ease of syntax makes it stand out, one of the many reasons why it has become the most popular programming language in this decade. While the learning part is easy, the interviewers often seek your approach in building the logic for pattern programs. As tricky as it may sound, with python it is a piece of cake. In this article, we will learn about various pattern programs in python. The following topics are covered in this blog:

  • Star Pattern Programs
  1. Pyramid Pattern Program
  2. Half-Pyramid Pattern Program
  3. Diamond Shaped Pattern Program
  4. Start Pattern Program
  5. Hourglass Pattern Program
  • Number Pattern Programs
  1. Simple Numbers In A Pyramid
  2. Pascal’s Triangle Pattern
  3. Diamond Pattern Program
  • Characters Patter Programs

The pattern programs incorporate a lot of nested loops. So if you are not familiar with loops in python, make sure to check out the detailed tutorial on loops in python.

Star Pattern Programs

Following are a few star pattern programs in python.

Pyramid Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0,n):
for j in range(0,k):
print(end=" ")
k = k - 1
for j in range(0, i+1):
print("*", end=" ")
print("\r")
pattern(5)

Output:

Reverse Pyramid Pattern Program

def pattern(n):
k = 2*n -2
for i in range(n,-1,-1):
for j in range(k,0,-1):
print(end=" ")
k = k +1
for j in range(0, i+1):
print("*", end=" ")
print("\r")
pattern(5)

Output:

Right Start Pattern Program

def pattern(n):
for i in range(0, n):
for j in range(0, i + 1):
print("* ", end="")
print("\r")
for i in range(n, 0 , -1):
for j in range(0, i + 1):
print("* ", end="")
print("\r")

pattern(5)

Output:

Left Start Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0, n-1):
for j in range(0, k):
print(end=" ")
k = k - 2
for j in range(0, i + 1):
print("* ", end="")
print("\r")
k = -1
for i in range(n-1,-1,-1):
for j in range(k,-1,-1):
print(end=" ")
k = k + 2
for j in range(0, i + 1):
print("* ", end="")
print("\r")


pattern(5)

Output:

Hourglass Pattern Program

def pattern(n):
k = n - 2
for i in range(n, -1 , -1):
for j in range(k , 0 , -1):
print(end=" ")
k = k + 1
for j in range(0, i+1):
print("* " , end="")
print("\r")
k = 2 * n - 2
for i in range(0 , n+1):
for j in range(0 , k):
print(end="")
k = k - 1
for j in range(0, i + 1):
print("* ", end="")
print("\r")

pattern(5)

Output:

Half-Pyramid Pattern Program

def pattern(n):
for i in range(0,n):
for j in range(0, i+1):
print("* " , end="")
print("\r")

pattern(5)

Output:

Left Half-Pyramid Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0, n):
for j in range(0, k):
print(end=" ")
k = k - 2
for j in range(0, i + 1):
print("* ", end="")
print("\r")

pattern(5)

Output:

Downward Half-Pyramid Pattern Program

def pattern(n):
for i in range(n, -1, -1):
for j in range(0, i + 1):
print("* ", end="")
print("\r")

pattern(5)

Output:

Diamond Shaped Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0, n):
for j in range(0 , k):
print(end=" ")
k = k - 1
for j in range(0 , i + 1 ):
print("* ", end="")
print("\r")
k = n - 2
for i in range(n , -1, -1):
for j in range(k , 0 , -1):
print(end=" ")
k = k + 1
for j in range(0 , i + 1):
print("* ", end="")
print("\r")

pattern(5)

Output:

Diamond Star Pattern Program

for i in range(5):
for j in range(5):
if i + j == 2 or i - j == 2 or i + j == 6 or j - i == 2:
print("*", end="")
else:
print(end=" ")
print()

Output:

Number Pattern Programs

Here are a few programs with numeric patterns in java.

Simple Numbers Program

def pattern(n):
x = 0
for i in range(0 , n):
x += 1
for j in range(0, i + 1):
print(x , end=" ")
print("\r")
pattern(5)

Output:

Pascal’s Triangle Program

def pascal(n):
for i in range(0, n):
for j in range(0, i + 1):
print(function(i, j)," ", end="")
print()

def function(n, k):
res = 1
if (k > n - k):
k = n - k
for i in range(0, k):
res = res * (n - i)
res = res // (i + 1)

return res

pascal(7)

Output:

Half-Pyramid Pattern With Numbers

def pattern(n):
for i in range(1, n):
for j in range(1, i + 1):
print(j, end= " ")
print("\r")
pattern(5)

Output:

Diamond Pattern With Numbers

def pattern(n):
k = 2 * n - 2
x = 0
for i in range(0, n):
x += 1
for j in range(0, k):
print(end=" ")
k = k - 1
for j in range(0, i + 1):
print(x, end=" ")
print("\r")
k = n - 2
x = n + 2
for i in range(n, -1, -1):
x -= 1
for j in range(k, 0, -1):
print(end=" ")
k = k + 1
for j in range(0, i + 1):
print(x, end=" ")
print("\r")

pattern(5)

Output:

Descending Order Pattern Program

def pattern(n):
for i in range(n, 0, -1):
for j in range(1, i + 1):
print(j, end=" ")

print("\r")

pattern(5)

Output:

Binary Numbers Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0, n):
for j in range(0, k):
print(end=" ")
k = k - 1
for j in range(0, i + 1):
print('10', end="")

print("\r")

pattern(5)

Output:

Characters Pattern Programs

Here are a few pattern programs in python with characters.

Right Alphabetical Triangle

def pattern(n):
x = 65
for i in range(0, n):
ch = chr(x)
x += 1
for j in range(0, i + 1):
print(ch, end=" ")
print("\r")

pattern(5)

Output:

Character Pattern Program

def pattern(n):
k = 2 * n - 2
x = 65
for i in range(0, n):
for j in range(0, k):
print(end=" ")
k = k - 1
for j in range(0, i + 1):
ch = chr(x)
print(ch, end=" ")
x += 1
print("\r")


pattern(7)

Output:

K Shape Character Program

for i in range(7):
for j in range(7):
if j == 0 or i - j == 3 or i + j == 3:
print("*", end="")
else:
print(end=" ")
print()

Output:

Triangle Character Pattern Program

def pattern(n):
k = 2 * n - 2
x = 65
for i in range(0, n):
ch = chr(x)
x += 1
for j in range(0, k):
print(end=" ")
k = k - 1
for j in range(0, i + 1):
print(ch, end=" ")
print("\r")


pattern(5)

Output:

Diamond Shaped Character Pattern Program

def pattern(n):
k = 2 * n - 2
for i in range(0, n):
for j in range(0, k):
print(end=" ")
k = k - 1
x = 65
for j in range(0, i + 1):
ch = chr(x)
print(ch, end=" ")
x += 1
print("\r")
k = n - 2
x = 65
for i in range(n, -1, -1):
for j in range(k, 0, -1):
print(end=" ")
k = k + 1
for j in range(0, i + 1):
ch = chr(x)
print(ch, end=" ")
x += 1
print("\r")


pattern(5)

Output:

This brings us to the end of this article where we have learned how we can implement different patterns in python using asterisk, numbers, and characters with the help of loops in python. I hope you are clear with all that has been shared with you in this tutorial.

If you wish to check out more articles on the market’s most trending technologies like Artificial Intelligence, DevOps, Ethical Hacking, then you can refer to Edureka’s official site.

Do look out for other articles in this series which will explain the various other aspects of Python and Data Science.

1. Machine Learning Classifier in Python

2. Python Scikit-Learn Cheat Sheet

3. Machine Learning Tools

4. Python Libraries For Data Science And Machine Learning

5. Chatbot In Python

6. Python Collections

7. Python Modules

8. Python developer Skills

9. OOPs Interview Questions and Answers

10. Resume For A Python Developer

11. Exploratory Data Analysis In Python

12. Snake Game With Python’s Turtle Module

13. Python Developer Salary

14. Principal Component Analysis

15. Python vs C++

16. Scrapy Tutorial

17. Python SciPy

18. Least Squares Regression Method

19. Jupyter Notebook Cheat Sheet

20. Python Basics

21.Web Scraping With Python

22. Generators in Python

23. Python Decorator

24. Python Spyder IDE

25. Mobile Applications Using Kivy In Python

26. Top 10 Best Books To Learn & Practice Python

27. Robot Framework With Python

28. Snake Game in Python using PyGame

29. Django Interview Questions and Answers

30. Top 10 Python Applications

31. Hash Tables and Hashmaps in Python

32. Python 3.8

33. Support Vector Machine

34. Python Tutorial

Originally published at https://www.edureka.co on Sep 27, 2019

--

--

Aayushi Johari
Edureka

A technology enthusiast who likes writing about different technologies including Python, Data Science, Java, etc. and spreading knowledge.