如何修改Python代码读取TXT文件生成嵌套元组列表?
解决方案
你的代码目前生成的是列表嵌套列表的结构,要改成列表嵌套整数元组的结构,需要做两处关键修改:
- 将每个字段的字符串值转换为整数类型
- 将处理后的列表转为不可变的元组(tuple)
修改后的代码如下:
F = [] for line in open(filename): items = line.rstrip('\r\n').split('\t') # 去除换行符并按制表符分割 items = [int(item.strip()) for item in items] # 去除空白后转成整数 F.append(tuple(items)) # 将列表转为元组后添加到F中
补充优化建议
如果你的文本中存在非整数的字段,可以根据实际情况调整类型转换(比如float());另外建议使用with语句管理文件,能自动处理文件关闭,更安全规范:
F = [] with open(filename, 'r') as file: for line in file: items = line.rstrip('\r\n').split('\t') items = [int(item.strip()) for item in items] F.append(tuple(items))
这样处理后,F的结构就会和你要求的[(4,3050),(1,4000),]完全一致。
内容的提问来源于stack exchange,提问作者André Portugal
相关产品推荐
相关产品推荐

