当前位置: 首页 > news >正文

Python经典面试题——在txt里面添加字段和数据

1. 问题:

如何在txt中实现第一行的字段加一个"test",如果第二行开始有数据,在每条数据的最后加"ok"

2.条件

提供的txt文本如下

时间--地区--人口---降雨量-----
20220101--北京--200--0.5-----
20230101--成都--100--0.55-----
20230301--西宁--80--0.45-----

3.解决

3.1 方法一:

""""""
def modify_file(file_path):with open(file_path, 'r', encoding='utf-8') as file:lines = file.readlines()  # 读取文件的所有行modified_lines = []for index, line in enumerate(lines):line = line.strip()  # 去除行首尾的空白字符if index == 0:modified_line = line + "test\n"  # 第一行字段后添加 "test"else:modified_line = line + "ok\n"  # 第二行开始的每条数据末尾添加 "ok"modified_lines.append(modified_line)with open(file_path, 'w', encoding='utf-8') as file:file.writelines(modified_lines)  # 将修改后的内容写回文件# 使用示例
file_path = 'b.txt'  # 文件路径
modify_file(file_path)

效果如下:
在这里插入图片描述

3.2 方法二

"""
如何在txt中实现第一行的字段加一个"test",如果第二行开始有数据,在每条数据的最后加"ok"
"""
import osdef line_append(line:str):line = line.strip() + "OK\n"return linewith open('a.txt','r+',encoding='utf-8') as f:text = f.readlines()    # # 读取文件内容,并将每行作为列表中的一个元素# 第一行加 |TESTtext[0] = text[0].strip() + "TEST\n"   # 修改第一行内容,在末尾添加了 "TEST",并在行尾添加换行符# 如果第二行有数据if len(text) > 1:text[-1] = text[-1].strip() +'ok'  # 如果文件有多于一行的内容,则修改最后一行,在末尾添加了 "ok"f.seek(0)                               # 将文件指针移动到文件开头f.truncate()                            # 清空文件内容f.writelines([text[0],*list(map(line_append,text[1:-1])),text[-1]])   # 将修改后的内容写入文件# 以上代码段展示了一个使用 with open 语句打开文件、读取、修改和写入文件内容的示例,其中运用了拆包、列表操作、文件指针操作和写入方法等技巧# *list 是用于拆包的语法。它的作用是将列表 list 中的元素拆分出来,作为单独的元素传递给函数或方法

【特别注意】*list 是用于拆包的语法。它的作用是将列表 list 中的元素拆分出来,作为单独的元素传递给函数或方法。

3.2.1 Python拆包语法举例

# 使用 * 运算符将可迭代对象的元素拆分为单独的参数。这对于需要将列表、元组等作为参数传递给函数或方法的场景非常有用
def add_numbers(a, b, c):return a + b + cnumbers = [1, 2, 3]result = add_numbers(*numbers)print(result)  # 输出: 6

相关文章:

Python经典面试题——在txt里面添加字段和数据

1. 问题: 如何在txt中实现第一行的字段加一个"test",如果第二行开始有数据,在每条数据的最后加"ok" 2.条件 提供的txt文本如下 时间--地区--人口---降雨量----- 20220101--北京--200--0.5----- 20230101--成都--100--0.55----- …...

【观察】打造以AI为导向的基础设施,联想锚定AI算力“主航道”

毫无疑问,人工智能对人类社会来说并不是一项简单的技术革命,它象征着一个时代的到来,如同工业时代之于农业时代一样,会带来天翻地覆的变革,影响人类社会百年、甚至千年的进程。 而AI算力对于推动人工智能应用的重要性毋…...

预防缓存穿透工具类

1. 前言 缓存穿透大家都知道,这里简单过一下 缓存和数据库中都没有的数据,而用户不断发起请求。比如查询id -1 的值 想着很多面向C端的查询接口,可能都需要做一下缓存操作,这里简单写了个自定义注解,将查询结果(包含…...

会员管理系统实战开发教程04-会员开卡

我们已经用3篇篇幅介绍了会员管理的功能,接着就要开发会员的业务。通常我们开通会员之后需要给会员开通会员卡,一个会员可以有多张会员卡。 在数据源设计的时候,像这种一个会员有多张会员卡的,我们称之为一对多的关系&#xff0c…...

数据结构(2)

冒泡排序: 1.比较相邻的两个元素。如果前一个元素比后一个元素大,则交换两者位置。 2.对每一对相邻元素做相同工作,从第一对元素到最后一对元素,最后的一个元素就是最大的元素。 for(int ia.length-1;i>0;i--){for (int j 0…...

使用ELK(ES+Logstash+Filebeat+Kibana)收集nginx的日志

文章目录 Nginx日志格式修改配置logstash收集nginx日志引入Redis收集日志写入redis从redis中读取日志 引入FilebeatFilebeat简介Filebeat安装和配置 配置nginx转发ES和kibanaELK设置账号和密码 书接上回:《ELK中Logstash的基本配置和用法》 Nginx日志格式修改 默认…...

TDengine server连接遇到的坑

一、TDengine安装 TDengine目前只有linux版本的server端,安装教程参考 https://zhuanlan.zhihu.com/p/302413259 二、TDengine连接 TDengine连接目前支持两种方式,一种是原生连接,该方法的默认端口号为6030;另一种是REST API连…...

什么是NetDevOps

NetDevOps 是一种新兴的方法,它结合了 NetOps 和 DevOps 的流程,即将网络自动化集成到开发过程中。NetDevOps 的目标是将虚拟化、自动化和 API 集成到网络基础架构中,并实现开发和运营团队之间的无缝协作。 开发运营(DevOps&…...

中小金融机构数字化转型最大的挑战是什么?

中国银保监会办公厅印发的《关于银行业保险业数字化转型的指导意见》强调,银行保险机构要加强顶层设计和统筹规划,科学制定数字化转型战略,统筹推进工作,并从战略规划与组织流程建设、业务经营管理数字化、数据能力建设、科技能力…...

Facebook HiPlot “让理解高维数据变得容易”

在这个全球信息化的时代,数据量呈爆炸式增长,数据的复杂性也是如此。如何有效地处理高维数据并找到隐藏在其中的相关性和模式是一个严峻的挑战。近年来,可视化和可视化分析已被应用于该任务,并取得了一些积极成果。Facebook的新Hi…...

【python】:python新设备环境移植(requirements.txt)

环境移植 condapip conda 你可以使用conda命令来创建一个包含所有已安装包的requirements.txt文件,并将其复制到新电脑上。然后,你可以在新电脑上使用pip命令来安装这些包及其依赖项。 以下是一个示例命令: conda list --export > requ…...

分类预测 | MATLAB实现1D-2D-CNN-GRU的多通道输入数据分类预测

分类预测 | MATLAB实现1D-2D-CNN-GRU的多通道输入数据分类预测 目录 分类预测 | MATLAB实现1D-2D-CNN-GRU的多通道输入数据分类预测分类效果基本介绍程序设计参考资料 分类效果 基本介绍 结合1D时序-2D图像多模态融合的CNN-GRU故障识别算法,基于一维时序信号和二维图…...

【LeetCode】125. 验证回文串 - 双指针

这里写自定义目录标题 2023-8-24 09:31:12 125. 验证回文串 2023-8-24 09:31:12 最关键的是 注意 题目中的 “字母和数字都属于字母数字字符。” 使用ascii码进行判断就行了 class Solution {public boolean isPalindrome(String s) {int p 0, q s.length() - 1;while (…...

centos7设置java后端项目开机自启【脚本、开机自启】

1.切换目录 cd /etc/init.d/2.编辑脚本 vim wbs-service-start.sh编辑内容 #!/bin/bash # chkconfig: 2345 80 90 # description: auto_runnohup java -jar /usr/java/wbs-service.jar > /dev/null 2>&1 & echo $! > /var/run/wbs-service.pid3.添加进入系…...

亿赛通电子文档安全管理系统 RCE漏洞复现(QVD-2023-19262)

0x01 产品简介 亿赛通电子文档安全管理系统(简称:CDG)是一款电子文档安全加密软件,该系统利用驱动层透明加密技术,通过对电子文档的加密保护,防止内部员工泄密和外部人员非法窃取企业核心重要数据资产&…...

一文读懂 Nuxt.js 服务端组件

服务端组件在 Web 开发生态系统中变得越来越普遍。传统上,在单页面应用中,即使是服务端渲染的应用,服务端仅与第一次加载相关,之后将由客户端接管。这意味着 Web 应用的每个部分都必须能够在客户端和服务端上渲染。 相反&#xf…...

LeetCode--HOT100题(39)

目录 题目描述:101. 对称二叉树(简单)题目接口解题思路代码 PS: 题目描述:101. 对称二叉树(简单) 给你一个二叉树的根节点 root , 检查它是否轴对称。 LeetCode做题链接:LeetCode-…...

“车-路-网”电动汽车充电负荷时空分布预测(matlab)

目录 1 主要内容 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序参考《基于动态交通信息的电动汽车充电负荷时空分布预测》和《基于动态交通信息的电动汽车充电需求预测模型及其对配网的影响分析》文献模型,考虑私家车、出租车和共用车三类交通工具特性和…...

【核磁共振成像】方格化重建

目录 一、缩放比例二、方格化变换的基础三、重建时间四、方格化核 一、缩放比例 对于笛卡尔K空间直线轨迹数据可直接用FFT重建,而如果K空间轨迹的任何部分都是非均匀取样的 可用DFT直接重建,有时称为共轭相位重建,但此法太慢不实用。把数据再…...

JAVA中时间戳和LocalDateTime的互转

时间戳转LocalDateTime: 要将时间戳转换为LocalDateTime并将LocalDateTime转换回时间戳,使用Java的java.time包。以下是示例代码: import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneId;public class Times…...

从CISCN2019华北赛区Web1看SQL注入的巧妙绕过技巧

1. 从CISCN2019华北赛区Web1看SQL注入的巧妙绕过技巧 在CTF比赛中,Web安全题目常常会设置各种过滤规则来阻止常见的攻击手法。CISCN2019华北赛区的Web1题目"Hack World"就是一个典型的例子,它通过组合过滤的方式限制了传统SQL注入手段。这道题…...

双阶段目标检测算法演进:从R-CNN到Mask R-CNN的技术突破与应用实践

1. 双阶段目标检测算法概述 目标检测是计算机视觉领域的核心任务之一,它不仅要识别图像中的物体类别,还要精确定位物体的位置。在众多目标检测算法中,双阶段检测算法因其高精度特性,一直是工业界和学术界的研究热点。这类算法的典…...

从MSTAR到RSDD-SAR:一文看懂SAR目标检测数据集20年演进,你的模型该用哪个?

从MSTAR到RSDD-SAR:SAR目标检测数据集的二十年技术进化与选型实战 军用雷达技术研究员李明曾在2018年遇到一个棘手问题:他训练的舰船检测模型在实验室测试准确率达到98%,实际部署到南海海域时性能却暴跌至62%。问题根源很快锁定在数据集——他…...

FPGA商用级ISP:动态坏点校正(DPCC)的滑窗架构与并行判决实现

【写在前面:为什么要写这个专栏?】在数字图像处理领域,ISP(图像信号处理器)的算法原理并不罕见,但真正能够支持 4K60fps 实时处理、并经过商用验证的 Verilog 硬核实现思路 却往往秘和封装在黑盒之中。我手…...

PCB布局设计规范与最佳实践指南

PCB布局设计的最佳实践指南1. 布局设计基础原则1.1 结构约束优先处理在PCB布局初期,必须优先考虑机械结构约束条件:根据导入的结构文件定位所有有特殊位置要求的器件连接器1脚位置必须与结构设计完全匹配严格遵守产品设计中规定的元件限高要求1.2 美观与…...

斗鱼季报图解:营收9亿同比降19% 经调整净利1260万

雷递网 雷建平 3月26日斗鱼(Nasdaq: DOYU)日前发布截至2025年12月31日的全年及第四季度财报。财报显示,斗鱼2025年营收为38.19亿元(约5.46亿美元),较上年同期的42.71亿元下降10.58%。斗鱼2025年毛利为4.9亿元,经调整净…...

K230 vs树莓派视觉套件:300元预算该选谁?实测对比工业检测场景

K230与树莓派视觉套件:300元预算下的工业检测实战对比 在工业自动化浪潮中,视觉检测系统正从大型企业向中小型制造车间快速渗透。当预算被严格限制在300元区间时,K230开发板与树莓派摄像头组合成为最受关注的两种解决方案。我们历时三个月在6…...

SOONet效果展示:多查询并行定位——‘倒水’‘接电话’‘写笔记’三任务同步响应

SOONet效果展示:多查询并行定位——‘倒水’‘接电话’‘写笔记’三任务同步响应 1. 引言:当视频搜索变得像说话一样简单 想象一下,你有一段长达一小时的会议录像,现在需要快速找到“张三站起来发言”、“李四在白板上画图”以及…...

微信小程序身份证检测实战:从createVKSession版本兼容到真机调试全解析

1. 微信小程序身份证检测功能开发概述 最近在开发一个需要身份证识别功能的小程序时,遇到了一个让人头疼的问题:在开发者工具中运行正常,但真机调试时却报错"createVKSession:fail The current device does not support version v1&quo…...

Simcenter Amesim 2023与Matlab 2023a联合仿真:从环境配置到实战例程详解

1. 联合仿真环境搭建前的准备工作 在开始Simcenter Amesim 2023与Matlab 2023a的联合仿真之前,我们需要做好充分的准备工作。这就像盖房子前要打好地基一样重要,否则后续工作可能会遇到各种意想不到的问题。 首先说说硬件要求。根据我的实测经验&#xf…...