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篇篇幅介绍了会员管理的功能,接着就要开发会员的业务。通常我们开通会员之后需要给会员开通会员卡,一个会员可以有多张会员卡。 在数据源设计的时候,像这种一个会员有多张会员卡的,我们称之为一对多的关系,…...

数据结构(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 应用的每个部分都必须能够在客户端和服务端上渲染。 相反…...

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…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么?它的作用是什么? Spring框架的核心容器是IoC(控制反转)容器。它的主要作用是管理对…...
Monorepo架构: Nx Cloud 扩展能力与缓存加速
借助 Nx Cloud 实现项目协同与加速构建 1 ) 缓存工作原理分析 在了解了本地缓存和远程缓存之后,我们来探究缓存是如何工作的。以计算文件的哈希串为例,若后续运行任务时文件哈希串未变,系统会直接使用对应的输出和制品文件。 2 …...