๐ Python Pattern Challenge — Day 19
Pattern printing is a simple way to improve your Python loops, spacing, repetition, and logical thinking. For Day 19, let's create a simple Right-Side Arrow Star Pattern ⭐.
This pattern is easy to understand but still gives you good practice with increasing and decreasing star counts.
๐ฏ Today's Challenge
Write a Python program to print:
Best and cleanest code will be rewarded! ๐
Solution 1 — Using for Loop
n = 6 for i in range(1, n + 1): print("* " * i) for i in range(n - 1, 0, -1): print("* " * i)
How it works
The first loop increases the number of stars:
* * * * * * * * * * * * * * * * * * * * *
The second loop decreases them:
* * * * * * * * * * * * * * *
Together, they create the complete arrow pattern.
Solution 2 — Using a Single Loop
n = 6 for i in list(range(1, n + 1)) + list(range(n - 1, 0, -1)): print("* " * i) The sequence: [1, 2, 3, 4, 5, 6, 5, 4, 3, 2, 1]
controls how many stars are printed on each row.
Solution 3 — Using a Function
def star_arrow(n): for i in list(range(1, n + 1)) + list(range(n - 1, 0, -1)): print("* " * i) star_arrow(6)
Now you can easily change the size:
star_arrow(10)and create a larger pattern.
⚡ Short & Clean Code
for i in [1,2,3,4,5,6,5,4,3,2,1]: print("* " * i)
๐ฅ Just one loop creates the complete pattern.
๐ Challenge Yourself
Can you modify this pattern:
- Take the size using input()?
- Create it using a while loop?
- Reverse the arrow?
- Replace * with # or another symbol?
- Create a hollow version?
- Move the pattern toward the left or right?
Drop your solution below! ๐
19 Days. 19 Patterns. Stronger Python Logic. ๐๐ฅ
Learn • Practice • Grow with CLCODING ๐
