编写一个Python 3的过程来列出一个表格。
创始人
2024-12-07 05:02:52
0

以下是一个编写Python 3的过程来列出一个表格的例子:

def print_table(data):
    # 确定每列的最大宽度
    col_widths = [max(len(str(item)) for item in col) for col in zip(*data)]
    
    # 打印表格标题
    print_row(data[0], col_widths)
    print('-' * (sum(col_widths) + len(col_widths) * 3 - 1))
    
    # 打印表格内容
    for row in data[1:]:
        print_row(row, col_widths)
    
def print_row(row, col_widths):
    # 打印一行数据
    for item, width in zip(row, col_widths):
        print(str(item).ljust(width), end=' | ')
    print()

# 示例数据
data = [
    ["姓名", "年龄", "性别"],
    ["张三", 25, "男"],
    ["李四", 30, "男"],
    ["王五", 28, "女"]
]

# 打印表格
print_table(data)

以上代码定义了一个print_table函数,接受一个二维列表作为参数,其中每个子列表表示表格中的一行数据。该函数首先计算每列的最大宽度,然后打印表格标题和表格内容。print_row函数用于打印表格的每一行数据。

运行以上代码将输出以下结果:

姓名  | 年龄 | 性别
-----------------
张三  | 25   | 男
李四  | 30   | 男
王五  | 28   | 女

这个例子中,表格包含3列,第一行是表格的标题,后面的行是表格的内容。每列的宽度根据该列中最长元素的长度确定。每个元素都使用ljust方法进行左对齐,并在元素之间添加分隔符。

相关内容

热门资讯

Android Recycle... 要在Android RecyclerView中实现滑动卡片效果,可以按照以下步骤进行操作:首先,在项...
安装apache-beam==... 出现此错误可能是因为用户的Python版本太低,而apache-beam==2.34.0需要更高的P...
Android - 无法确定任... 这个错误通常发生在Android项目中,表示编译Debug版本的Java代码时出现了依赖关系问题。下...
Android - NDK 预... 在Android NDK的构建过程中,LOCAL_SRC_FILES只能包含一个项目。如果需要在ND...
Akka生成Actor问题 在Akka框架中,可以使用ActorSystem对象生成Actor。但是,当我们在Actor类中尝试...
Agora-RTC-React... 出现这个错误原因是因为在 React 组件中使用,import AgoraRTC from “ago...
Alertmanager在pr... 首先,在Prometheus配置文件中,确保Alertmanager URL已正确配置。例如:ale...
Aksnginxdomainb... 在AKS集群中,可以使用Nginx代理服务器实现根据域名进行路由。以下是具体步骤:部署Nginx i...
AddSingleton在.N... 在C#中创建Singleton对象通常是通过私有构造函数和静态属性来实现,例如:public cla...
Alertmanager中的基... Alertmanager中可以使用repeat_interval选项指定在一个告警重复发送前必须等待...