Comments are descriptions that help programmers understand the program.

## What is the purpose?

The purpose for comments is to provide additional information to the programmer, to explain what the code does, why it does it and how it works or is expected to work.

This information can be useful not only to the programmer but anyone in the future that may need to modify the code in the future.

```				```
print("Hello World") #prints Hello World
```
```

Some common uses of comments include :

1. Describing the purpose of a function.

```				```
# Calculate the area of a circle given its radius
return 3.14 * radius**2

```
```

2. Describing the purpose of a block of code.

```				```
# Initialize an empty list to store the names of fruits
fruits = []

# Add some fruits to the list
fruits.append('apple')
fruits.append('banana')

```
```

3. A comment documenting assumptions or constraints that the code relies on:

```				```
# Assume that the input list has at least one element
def find_maximum(numbers):
# Start by assuming that the first element is the maximum
maximum = numbers[0]
for number in numbers:
if number > maximum:
# Update the maximum if we find a larger number
maximum = number
return maximum

```
```

4. A comment explaining a complex piece of code:

```				```
# Use numpy to calculate the dot product of two matrices
import numpy as np

# Define two matrices A and B
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])

# Calculate the dot product of A and B
# The dot product of two matrices is defined as the sum of the products of the corresponding elements of the matrices
# We can use the dot() function in numpy to calculate the dot product
dot_product = np.dot(A, B)

```
```

In this example, the comment explains what the dot product of two matrices is, and how to calculate it using the `dot()` function in the numpy library. This comment provides useful information for someone who may not be familiar with matrix operations and wants to understand what the code is doing.