Last modified: Oct 28, 2024 By Alexander Williams

# Python Print List of Numbers with Precision

When working with lists of floating-point numbers, you may want to format each number to a specific precision, especially for readability or presentation purposes.

## Using `round()`

to Set Precision for Each Element

The `round()`

function allows us to specify the decimal precision of each number in the list. This is effective for rounding each item individually.

```
# Rounding each element in a list to 2 decimal places
numbers = [3.14159, 2.71828, 1.61803]
rounded_numbers = [round(num, 2) for num in numbers]
print(rounded_numbers)
```

```
Output:
[3.14, 2.72, 1.62]
```

## Using String Formatting for Precision in Output

For more control over how numbers appear, use Python's **f-strings** for in-place formatting during printing.

```
# Using f-strings to print with precision
numbers = [3.14159, 2.71828, 1.61803]
formatted_numbers = [f"{num:.2f}" for num in numbers]
print(formatted_numbers)
```

Each number in `formatted_numbers`

will be a string formatted to two decimal places.

```
Output:
['3.14', '2.72', '1.62']
```

## Using `format()`

Method for List Precision

The `format()`

method can also be used to format each number individually, offering flexibility in how numbers are presented.

```
# Using format() for precision
numbers = [3.14159, 2.71828, 1.61803]
formatted_numbers = ["{:.2f}".format(num) for num in numbers]
print(formatted_numbers)
```

This produces a list of strings, each with a specified precision.

```
Output:
['3.14', '2.72', '1.62']
```

## Combining Precision with `join()`

for Printing

When you need to print all numbers as a single line, combine `join()`

with formatting. This approach is useful for displaying lists compactly.

```
# Joining numbers with precision in a single line
numbers = [3.14159, 2.71828, 1.61803]
formatted_numbers = ", ".join(f"{num:.2f}" for num in numbers)
print(formatted_numbers)
```

```
Output:
3.14, 2.72, 1.62
```

## Printing Lists with Precision Using `map()`

`map()`

can simplify formatting by applying `format()`

to each list item, and it works well with `join()`

for compact display.

```
# Using map to format and print numbers with precision
numbers = [3.14159, 2.71828, 1.61803]
formatted_numbers = ", ".join(map(lambda x: f"{x:.2f}", numbers))
print(formatted_numbers)
```

```
Output:
3.14, 2.72, 1.62
```

## Conclusion

Python offers multiple ways to format lists of numbers with precision. Choose a method based on your specific needs and output requirements.

For more details, see the official Python documentation on rounding.