如何在Python中将逐行存储的文本文件按两两分组读取为二维列表
解决方法
你可以先一次性读取所有行并去除每行末尾的换行符,再通过步长为2的遍历两两组合成子列表即可,代码调整如下:
details_list = [] with open("people2.txt", "r", encoding="utf-8") as people2: # 读取所有行并去除每行的换行/空白字符,同时过滤空行 lines = [line.strip() for line in people2 if line.strip()] # 按步长2遍历,两两分组 for i in range(0, len(lines), 2): details_list.append([lines[i], lines[i+1]]) print(details_list)
代码说明
- 这里用
with语法管理文件对象,不需要手动调用close(),文件操作完成后会自动关闭,避免资源泄漏 - 先把所有行处理成纯净的内容列表
lines,过滤掉可能存在的空行避免分组出错 - 遍历的时候步长设为2,每次取索引
i和i+1的两个元素组成子列表加入结果,就能得到你需要的两两分组的二维列表
内容的提问来源于stack exchange,提问作者Ian Scott
相关产品推荐
相关产品推荐

