Python如何分割文件中制表符分隔内容并分别存入对应数组
Python实现制表符分隔内容拆分并分类存储
你现有代码的问题是遍历每行拆分出的所有词时,没有按列区分内容,全部追加到了imie数组里,自然会出现内容混存的情况。
如果你的文件每行固定为「文本+对应数字」两列结构,不管列之间是制表符还是空格分隔,直接按行拆分后按位置取内容分类追加即可,具体实现如下:
实现代码
imie = [] dlugosc = [] plik = [] # 推荐用with语句打开文件,会自动完成文件关闭操作,避免资源泄漏 with open("testcase.txt", "r", encoding="utf-8") as file: for line in file: # 清除每行首尾的换行符、多余空白,跳过空行避免拆分报错 stripped_line = line.strip() if not stripped_line: continue # 明确是制表符分隔可以传参split('\t'),无参split()会自动匹配任意空白字符(制表符、空格、多空格都支持) name, length = stripped_line.split() # 按预期规则追加到对应数组 plik.append(name) plik.append(length) imie.append(name) dlugosc.append(length)
运行效果
执行代码后三个数组的内容完全匹配预期:
plik:['abc', '1', 'bca', '2']imie:['abc', 'bca']dlugosc:['1', '2']
补充说明:如果需要把数字列存为数值类型而非字符串,追加到
dlugosc时做类型转换即可,将对应代码改为dlugosc.append(int(length))。
内容的提问来源于stack exchange,提问作者lolorekkk
相关产品推荐
相关产品推荐

