When To Use Brackets Or Parentheses In Python

In Python, brackets and parentheses are both important symbols used for different purposes. Knowing when to use brackets or parentheses can greatly improve your code readability and functionality. As a Python developer, I have encountered situations where I needed to make a decision between these two symbols. In this article, I will go into detail about when to use brackets or parentheses in Python and provide personal insights based on my experiences.


Brackets, represented by the characters ‘[ ]’, have several use cases in Python:

1. Lists and List Comprehensions

Brackets are commonly used to define lists in Python. For example:

fruits = ['apple', 'banana', 'orange']

You can also use brackets in list comprehensions to create new lists from existing ones:

squares = [x**2 for x in range(1, 5)]

Using brackets for lists helps distinguish them from other data types and makes the code more readable.

2. Indexing and Slicing

When working with lists, brackets are used for indexing and slicing. For example:


This code would return the first element of the ‘fruits’ list, which is ‘apple’.

Similarly, you can use brackets to perform slicing:


This code would return a new list containing the elements at index 1 and 2, which are ‘banana’ and ‘orange’, respectively.

3. Accessing Dictionary Values

In Python, dictionaries use brackets to access their values based on keys. For example:

person = {'name': 'John', 'age': 30}


This code would return the value corresponding to the ‘name’ key, which is ‘John’.


Parentheses, represented by the characters ‘( )’, also have specific use cases in Python:

1. Function Calls

Parentheses are used to call functions in Python. For example:

print('Hello, World!')

The print function is called with parentheses, enclosing the string ‘Hello, World!’. Without parentheses, the function would not be executed.

2. Grouping Expressions

When writing complex expressions or mathematical operations, parentheses are used to group and prioritize parts of the expression. For example:

(2 + 3) * 4

In this case, parentheses ensure that the addition operation is performed before the multiplication operation, resulting in a value of 20.

3. Tuple Creation

In Python, parentheses can be used to create tuples, which are immutable sequences. For example:

my_tuple = (1, 2, 3)

Tuples are commonly used when working with multiple values that should not be modified.


Understanding when to use brackets or parentheses in Python is crucial for writing clean and efficient code. Brackets are used for lists, indexing, slicing, and accessing dictionary values. On the other hand, parentheses are used for function calls, grouping expressions, and tuple creation.

By using brackets and parentheses appropriately, you can make your code more readable and avoid potential errors. However, remember that these are general guidelines, and there may be exceptions or alternative ways to achieve the same result.