# Week 7 at Blockfuse Labs, Exploring Python Lists
This past week at Blockfuse Labs, under the instruction of Mr. Dimka, we focused on one of the most important and versatile data structures in Python the list. It was a week full of discovery, practice, and learning how powerful lists can be in organizing and manipulating data.
What is python list?
A list in Python is a collection of items that can be changed and can hold elements of different types strings, integers, booleans, or even other lists.
```python
mixed_list = ["Mark", 25, True, 3.14, "Yutory"]
```
Accessing List Items
Python uses zero-based indexing, which means the first item is at index 0.
You can also use negative indexing to access elements from the end
```python
names = ["Mark", "", "MP", "Dula", "Shimey"]
print(names[0])
print(names[2])
#negative indexing
print(names[-1])
```
We can add items using append() and insert()
```python
names = ["Mark", "", "MP", "Dula", "Shimey"]
names.append("Yutory")
names.insert(1,"Victor")
```
We can get a part of a list using slicing
```python
numbers = [1, 2, 3, 4, 5, 6]
print(numbers[1:4])
print(numbers[:3])
print(numbers[3:])
```
At first, lists felt like just another topic. But as we explored them deeper, I began to see how important they are in real programming tasks from storing user input to building menus and managing large datasets. Knowing how to use list methods effectively saves time and makes code more readable.
Thanks to Mr. Dimka, our sessions were full of practical examples and clear explanations. We didn’t just learn how lists work we understood why they matter.