Draw a Christmas Wreath in Python Using Turtle

(Last Updated On: 13/10/2023)

What better way to celebrate the upcoming holiday season than by injecting some originality into your celebrations? To make a lovely Christmas wreath, we’ll explore the fascinating worlds of Python programming and Turtle graphics in this blog. The wreath is a chance to demonstrate your coding abilities in addition to serving as a symbol of joy and warmth. Join us on this thrilling adventure as we take you step-by-step through the process of drawing a Christmas wreath. Prepare to unleash your creative side and share the joy of the season with your very own Python-powered masterpiece!

Learn How to Generate Random Numbers in Python, Now!

Setting up Your Coding Environment:

Let’s make sure our environment is properly set up by following the further instructions:

  • Python must be installed on your computer in order to draw the Christmas wreath with Python and Turtle. 
  • Don’t be concerned if you don’t have it yet! Python is freely available and simple to set up. 
  • Once Python is installed, you’ll also need to install the Turtle graphics library, which will allow us to create stunning visual designs. 
  • Follow our step-by-step instructions to set up your coding environment, and you’ll be ready to start your creative journey soon.

Python Program to Draw Christmas Wreath Using Turtle

from turtle import *

speed(0)
bgcolor("black")

# Wreath
pensize(2)
penup()
goto(0, -100)
pendown()

for i in range(13):
    for colours in ["forestgreen", "darkgreen", "limegreen"]:
        color(colours)
        circle(150)
        left(10)
        forward(20)

# Ribbon bow
penup()
goto(-95, 110)
pendown()
color("darkred", "red")
begin_fill()
forward(200)
right(120)
forward(100)
right(120)
forward(200)
left(120)
forward(100)
end_fill()

# Circle in ribbon
penup()
goto(-40, 160)
pendown()
begin_fill()
circle(30)
end_fill()

penup()
goto(-25, 132)
pendown()
begin_fill()
right(20)
forward(130)
left(80)
forward(60)
left(118)
forward(150)
end_fill()

begin_fill()
right(92)
forward(5)
right(80)
forward(150)
left(110)
forward(60)
left(89)
forward(139)
end_fill()

# Yellow Decoration 
penup()
goto(-150, 20)
pendown()
color("gold", "yellow")
begin_fill()
circle(10)
end_fill()

penup()
goto(140, -50)
pendown()
begin_fill()
circle(10)
end_fill()

penup()
goto(-30, -130)
pendown()
begin_fill()
circle(10)
end_fill()

penup()
goto(120, 110)
pendown()
begin_fill()
circle(10)
end_fill()

# Red Decoration 
penup()
goto(140, 40)
pendown()
color("darkred", "red")
begin_fill()
circle(10)
end_fill()

# Red Decoration 
penup()
goto(-120, -80)
pendown()
begin_fill()
circle(10)
end_fill()

# Red Decoration 
penup()
goto(60, -120)
pendown()
begin_fill()
circle(10)
end_fill()

# Red Decoration 
penup()
goto(-135, 110)
pendown()
begin_fill()
circle(10)
end_fill()

# Message
penup()
goto(-170, 250)
pendown()
color("white")
write("MERRY CHRISTMAS", font=("Arial", 25, "bold"))

hideturtle()

Get Complete Python Interview Questions and Answers, here!

Explanation of the code:

The provided code creates a Christmas wreath with various decorations using Python’s Turtle graphics module. Let’s examine the code and describe each component:

  1. Setting up the environment:

Importing the turtle module and setting the drawing speed to the maximum.

Setting the background color to black.

  1. Drawing the wreath:

Setting the pen size to 2.

Lifting the pen up and moving to the center of the canvas (-100, -100).

Starting a nested loop to draw the wreath using three different shades of green.

Drawing circles with a radius of 150 and turning left by 10 degrees after each circle.

Moving forward by 20 units before drawing the next circle.

This loop creates the lush greenery of the wreath.

  1. Adding the ribbon bow:

Lifting the pen up and moving to the starting position of the ribbon bow (-95, 110).

Setting the fill color to red and the outline color to dark red.

Beginning the fill, moving forward by 200 units, turning right by 120 degrees, moving forward by 100 units, and repeating this pattern to draw the bow shape.

Ending the fill.

  1. Adding details to the ribbon:

Moving the pen to draw a circle in the middle of the bow (-40, 160) and filling it.

Drawing the left dangly part of the ribbon by changing the pen position, beginning the fill, and drawing a series of lines.

Furthermore drawing the right dangly part of the ribbon by changing the pen position, beginning the fill, and drawing a series of lines.

  1. Adding decorations:

Drawing four yellow decorations using circles at specific positions.

After that drawing four red decorations using circles at specific positions.

Each decoration is drawn by lifting the pen, moving to the desired position, putting the pen down, and filling the circle with the chosen color.

  1. Adding a message:

Moving the pen to the top-left corner of the canvas (-170, 250).

Setting the pen color to white.

Writing the message “MERRY CHRISTMAS” using the Arial font, size 25, and bold style.

  1. Hiding the turtle:

Hiding the turtle cursor to display only the final drawing.The code combines various Turtle functions, such as circle(), forward(), right(), left(), color(), penup(), pendown(), begin_fill(), end_fill(), and write(), to create the beautiful Christmas wreath and its decorations. By running this code, you’ll be able to visualize the festive spirit and spread the joy of the holiday season.

Output:

christmas wreath

We hope our blog post on “Draw a Christmas Wreath in Python Using Turtle” has been helpful to you. To continue enhancing your coding skills, visit our website Newtum and explore our online coding courses covering Java, HTML, PHP, and more. Keep learning with us!

About The Author

Leave a Reply