m0_71316592 2024-03-16 23:48 采纳率: 75%
浏览 4

计算机二级python语言方面的疑问

img

img

img


求大 佬帮帮忙
我的代码错在哪儿了呀,为啥目标文件里一条记录都没写进去呀?
代码在if之前好像都是对的,我用print(l)试过,输出了一行行切片好的元素

  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-16 23:49
    关注

    引自免费微信小程序:皆我百晓生

    根据您提供的问题和代码片段,看起来您正在尝试从 "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" 文件中看到正确的输出结果。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 3月16日

悬赏问题

  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
  • ¥15 VB.NET如何绘制倾斜的椭圆
  • ¥15 在rhel8中安装qemu-kvm时遇到“cannot initialize crypto:unable to initialize gcrypt“报错”
  • ¥15 arbotix没有/cmd_vel话题
  • ¥20 找能定制Python脚本的
  • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
  • ¥15 用C语言怎么判断字符串的输入是否符合设定?
  • ¥15 通信专业本科生论文选这两个哪个方向好研究呀