Python用for循环打印表格
时间: 2024-10-16 14:20:03 浏览: 26
在Python中,你可以使用`for`循环和字符串格式化来创建简单的表格。下面是一个基本的例子,假设你想打印一个3列的二维列表:
```python
# 定义一个二维列表作为数据
data = [
['姓名', '年龄', '城市'],
['张三', 25, '北京'],
['李四', 30, '上海'],
['王五', 28, '广州']
]
# 打印表格头
print(''.join(['-' * (max(len(word) for row in data for word in row) + 2) for _ in range(2)])) # 表格线
# 使用for循环遍历数据并打印每一行
for row in data:
print('|' + '|'.join(str(cell).ljust(max(len(word) for word in row)) for cell in row) + '|') # 每一行的格式化
```
运行上述代码会输出类似这样的表格:
```
+--------+-----+----------+
| 姓名 | 年龄 | 城市 |
+--------+-----+----------+
| 张三 | 25 | 北京 |
| 李四 | 30 | 上海 |
| 王五 | 28 | 广州 |
+--+----------+
```
相关问题
用python输出表格形式,使用for循环
在Python中,你可以使用`pandas`库来方便地创建表格并用`for`循环填充数据。`pandas`是一个强大的数据分析工具,它提供了DataFrame数据结构,非常适合于创建表格。以下是一个简单的例子:
```python
import pandas as pd
# 创建一个空的二维列表,模拟要填充的数据
data = [['Name', 'Age', 'Country'], ['Alice', 28, 'USA'], ['Bob', 35, 'Canada']]
# 将二维列表转换为DataFrame
df = pd.DataFrame(data)
# 定义一个列表,存储你要显示的行号
rows_to_show = list(range(len(df)))
# 使用for循环遍历行号并输出对应的行
for row in rows_to_show:
print(df.iloc[row]) # iloc是基于位置的索引
```
在这个例子中,`iloc`方法用于按行和列的绝对位置获取数据。如果想根据列名而不是索引来操作,可以使用`loc`方法代替。
如果你不希望每次都创建整个DataFrame,也可以直接在循环内部添加新的行:
```python
headers = ['Name', 'Age', 'City']
table = []
for i in range(5): # 假设你想输出5行
name = input("Enter name: ")
age = int(input("Enter age: "))
city = input("Enter city: ")
table.append([name, age, city])
# 同样将表转换为DataFrame并打印
df = pd.DataFrame(table)
print(df)
```
这样就可以动态地输入数据并形成表格输出。
python 循环创建表格
您可以使用循环来创建表格,在Python中可以使用列表和嵌套循环来实现。下面是一个示例代码:
```python
# 定义表格的行和列数
rows = 5
cols = 3
# 创建一个空的二维列表作为表格
table = []
# 使用嵌套循环来填充表格
for i in range(rows):
# 创建一个空的列表作为当前行
row = []
for j in range(cols):
# 向当前行添加数据
data = input("请输入第{}行,第{}列的数据:".format(i+1, j+1))
row.append(data)
# 将当前行添加到表格中
table.append(row)
# 打印表格
for row in table:
print(row)
```
上述代码会提示您输入表格中每个单元格的数据,并将数据存储在二维列表中。最后,打印出完整的表格。您可以根据需要调整行数(`rows`)和列数(`cols`)的值。
阅读全文