写入txt文件时如何仅保留嵌套列表数值并按逐行空格格式输出
Python实现嵌套列表按指定格式写入txt
核心思路
直接将Python列表对象写入文件时,会自动调用列表的默认字符串转换方法,输出完整的Python语法格式,自带括号、逗号等符号。要得到纯数值逐行空格分隔的效果,只需要遍历每个子元素,手动格式化为目标字符串后逐行写入即可。
可直接运行的代码
# 原始嵌套列表 data = [[91, 4.0], [116, 9.0], [117, 1.0], [118, 100.0], [134, 1.0], [144, 30.0], [162, 41.0]] # 用with上下文管理器打开文件,会自动处理文件关闭逻辑,避免资源泄漏 with open("result.txt", "w", encoding="utf-8") as file: for item in data: # 把每行的两个数值转为字符串后用空格拼接,末尾加换行符实现换行 line = f"{item[0]} {item[1]}\n" file.write(line)
通用扩展写法
如果后续子列表的数值数量不固定(比如不止2个值),可以用更通用的拼接逻辑,不需要手动写索引:
with open("result.txt", "w", encoding="utf-8") as file: for item in data: # 将当前子列表所有元素转成字符串,统一用空格拼接为一行 file.write(' '.join(map(str, item)) + '\n')
最终效果
运行代码后生成的result.txt内容完全符合预期:
91 4.0 116 9.0 117 1.0 118 100.0 134 1.0 144 30.0 162 41.0
内容的提问来源于stack exchange,提问作者user19397088
相关产品推荐
相关产品推荐

