python二维列表对齐打印
时间: 2023-10-31 11:04:36 浏览: 65
可以使用format方法,将每个元素转换为字符串,并指定宽度和对齐方式,然后再用join方法连接每一行,最后打印出整个列表。
例如,假设有一个二维列表如下:
```
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9, 10],
[11, 12]
]
```
可以按照以下方式对齐打印:
```
def print_matrix(matrix):
# 获取每列的最大宽度
col_widths = [max(len(str(x)) for x in col) for col in matrix]
# 将每个元素转换为字符串并对齐
rows = [[str(x).ljust(col_widths[i]) for i, x in enumerate(row)] for row in matrix]
# 连接每一行并打印
for row in rows:
print(' '.join(row))
print_matrix(matrix)
```
输出结果如下:
```
1 2 3
4 5 6
7 8 9 10
11 12
```
相关问题
python二维数组打印表格
下面是一个简单的例子,展示如何使用Python二维数组打印表格:
```python
table = [['Name', 'Age', 'Gender'],
['John', '25', 'Male'],
['Lisa', '30', 'Female'],
['Bob', '18', 'Male']]
# 打印表格头
print('{:<10} {:<10} {:<10}'.format(table[0][0], table[0][1], table[0][2]))
# 打印分割线
print('-' * 30)
# 打印数据行
for row in table[1:]:
print('{:<10} {:<10} {:<10}'.format(row[0], row[1], row[2]))
```
输出结果:
```
Name Age Gender
------------------------------
John 25 Male
Lisa 30 Female
Bob 18 Male
```
在这个例子中,我们定义了一个二维数组`table`,其中第一行是表格的表头,其余行是数据行。我们使用字符串格式化来打印表格,首先打印表格头,然后打印分割线,最后打印每一行的数据。在格式化字符串中,`<10`表示左对齐并占据10个字符的位置。
numpy创建二维数组左对齐
在NumPy中,可以使用`numpy.array()`方法来创建二维数组。要使创建的二维数组左对齐,可以使用`numpy.zeros()`或者`numpy.empty()`方法来先创建一个未初始化的数组,然后再用需要的值填充数组。例如:
```python
import numpy as np
# 创建一个2行3列的未初始化数组
arr = np.empty((2, 3), dtype=int)
# 使用具体的值填充数组
arr = [1, 2, 3]
arr = [4, 5, 6]
print(arr)
```
这样就可以创建一个2行3列的二维数组,并使其左对齐。