You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助:将网络信息文件内容展示到Python GUI网格中

帮你轻松实现网络信息的表格展示

嘿,作为系统管理员能自己写Python脚本收集网络信息已经很厉害了!我完全懂你手动看文件的麻烦,下面给你两个简单的方案,不需要复杂的GUI编程,就能把你的4个文件内容转换成你想要的网格表格——每个文件对应一行,文件里的每一行对应一列。

方案1:用tabulate库生成美观表格(推荐)

这个库专门用来生成各种样式的表格,用法超简单,只需要几步就能搞定:

第一步:安装tabulate

打开命令行,运行下面的命令(如果你用的是Python3,可能需要用pip3):

pip install tabulate

第二步:运行下面的代码

把这段代码保存成show_network_table.py,记得把file_paths里的文件名改成你实际的四个文件名称,headers改成你对应的指标名称(比如“带宽”“延迟”之类的):

from tabulate import tabulate

# 替换成你实际的四个文件路径
file_paths = ["network_info_1.txt", "network_info_2.txt", "network_info_3.txt", "network_info_4.txt"]
table_data = []

for file_path in file_paths:
    try:
        # 读取文件的前4行内容,自动去掉换行符
        with open(file_path, 'r') as f:
            lines = [line.strip() for line in f.readlines()[:4]]
            # 如果文件行数不足4行,用空字符串补全到4列
            while len(lines) < 4:
                lines.append("")
            table_data.append(lines)
    except FileNotFoundError:
        # 如果文件找不到,这一行显示提示信息
        table_data.append(["文件未找到", "", "", ""])

# 替换成你实际的列标题
headers = ["指标1", "指标2", "指标3", "指标4"]

# 用grid样式打印表格,就是你要的网格效果
print(tabulate(table_data, headers=headers, tablefmt="grid"))

第三步:运行脚本

在命令行里切换到脚本和文件所在的文件夹,运行:

python show_network_table.py

你就能看到整齐的网格表格啦!


方案2:纯Python实现(无需额外安装库)

如果你不想装新的库,用Python自带的功能也能实现,代码稍微长一点,但同样好用:

# 替换成你实际的四个文件路径
file_paths = ["network_info_1.txt", "network_info_2.txt", "network_info_3.txt", "network_info_4.txt"]
table_data = []

for file_path in file_paths:
    try:
        with open(file_path, 'r') as f:
            lines = [line.strip() for line in f.readlines()[:4]]
            while len(lines) < 4:
                lines.append("")
            table_data.append(lines)
    except FileNotFoundError:
        table_data.append(["文件未找到", "", "", ""])

# 替换成你实际的列标题
headers = ["指标1", "指标2", "指标3", "指标4"]

# 计算每列的最大宽度,让表格对齐更美观
col_widths = []
for col_idx in range(4):
    # 找出当前列所有内容的最大长度
    max_length = max(len(str(row[col_idx])) for row in table_data + [headers])
    col_widths.append(max_length + 2)  # 加2是为了给内容留空格

# 打印表格边框和表头
border_line = "+" + "+".join(["-" * width for width in col_widths]) + "+"
print(border_line)
header_content = "|" + "|".join([title.center(width) for title, width in zip(headers, col_widths)]) + "|"
print(header_content)
print(border_line)

# 打印每一行数据
for row in table_data:
    row_content = "|" + "|".join([content.ljust(width) for content, width in zip(row, col_widths)]) + "|"
    print(row_content)
print(border_line)

同样保存成脚本运行就行,输出的表格也是标准的网格样式,完全符合你的需求。

内容的提问来源于stack exchange,提问作者Toi Lee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:15:18