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

如何用Python提取文件每行首个数字并生成指定顶点输出?

问题解答

没错,split()方法正是你完成这个需求的核心工具——因为文件里每行的内容都是用空格分隔的,split()能把每行字符串拆成单个元素的列表,刚好适配你对每行内容的拆分处理需求。

修改后的完整代码

filename = "your_file.txt"  # 替换成你的实际文件名
with open(filename) as f:
    # 读取文件内容,同时过滤空行、去掉每行首尾空格
    content = [line.strip() for line in f if line.strip()]

# 处理第一行:提取总顶点数并打印
total_vertices = int(content[0])
print(f"The number of total vertices is {total_vertices}")

# 处理后续每行,生成对应顶点的邻接对格式
for vertex_idx in range(total_vertices):
    # 拆分当前行的内容为整数列表
    neighbor_list = list(map(int, content[vertex_idx + 1].split()))
    # 生成每个邻接对的字符串形式
    adjacency_pairs = [f"({vertex_idx}, {n})" for n in neighbor_list]
    # 拼接并打印最终格式
    print(f"Vertex {vertex_idx}: {' '.join(adjacency_pairs)}")

代码说明

  1. 读取并预处理内容:用列表推导式一次性完成读取、去空格、过滤空行的操作,避免后续处理无效内容。
  2. 提取总顶点数:文件第一行是顶点总数,转成整数后直接按要求格式打印。
  3. 处理每行邻接顶点:
    • 用split()把每行的空格分隔字符串拆成单个元素的列表,再转成整数;
    • 用列表推导式生成(顶点索引, 邻接点)格式的字符串;
    • 用' '.join()把所有邻接对拼接成空格分隔的形式,最后按要求格式打印。

运行这段代码后,输出会完全匹配你期望的格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 06:40:54