求大 佬帮帮忙
我的代码错在哪儿了呀,为啥目标文件里一条记录都没写进去呀?
代码在if之前好像都是对的,我用print(l)试过,输出了一行行切片好的元素
引自免费微信小程序:皆我百晓生
根据您提供的问题和代码片段,看起来您正在尝试从 "sensor.txt" 文件中读取数据,并筛选出传感器编号为 "earpa001" 的所有行,然后将这些行写入到 "earpa001.txt" 文件中。但是,您的代码在处理输出格式时存在问题,导致目标文件没有正确写入内容。
以下是修改后的代码:
f1 = open("sensor.txt", "r")
fo = open("earpa001.txt", "w")
for line in f1:
l = line.strip().split(",")
if l[1] == "earpa001":
# 格式化输出字符串,去除不必要空格并在元素之间使用逗号分隔,确保与参考格式一致
formatted_line = "{},{}.{},{}".format(l[0], l[1], l[2], l[3].strip())
fo.write(formatted_line + '\n')
f1.close()
fo.close()
这段代码首先打开两个文件,一个用于读取(f1
),另一个用于写入(fo
)。接着遍历 f1
中的每一行,并按逗号分割成列表 l
。当传感器编号(l[1]
)等于 "earpa001" 时,对这一行进行格式化处理并写入新文件。最后关闭两个文件。
请确保输入文件(sensor.txt)中的每行记录格式与描述相符,并检查路径是否正确。运行上述修复后的代码应该能在 "earpa001.txt" 文件中看到正确的输出结果。