新手pyhoner的指定内容读取和写入的思路
2024-08-24 17:01:01
在linux上,很容易碰到操作文件的内容,读取指定信息的情况,或者要求在指定内容中追加内容,其实两个flag标识符就能解决。
先上个图:
执行while flag==0即可:
while flag==0:
print(line)
在某文件的内容再插入一行,这个需求看似复杂,分析下:
1.要求遍历文件,我们可以把文件readlines()成列表,或者line in file:opration...一行行读,都可以
2.将每一行写入新文件,new_file.write(line)
3.到目标内容时,flag改变,因为有多行,所以会产生遍历多次,那怎么让新内容插到正确的位置呢?
4.比如插到目标内容最下面,先将每行line设成一个list列表,将新内容加到列表最后
5.因为所有内容都要写入,包括flag为0和1的所有内容,所以不能break中断遍历。
6.那么问题来了,列表中的目标内容是多行,文件遍历也是多次,怎么只写一次呢?答案还是flag,但这个flag是别的flag,且叫2_flag吧
7.遍历添加新内容后的列表时,2_flag初始为0,开始遍历文件写入,在写入第一次文件后,将2_flag改为1
8.文件遍历目标内容时,需要两个条件,if flag== 0 and 2_flag==0: writelines列表中所有内容。
9.写入列表内容后,将2_flag更改为1.这样就遍历了一次列表,但不印象文件内容继续往下遍历。。。。
最新文章
- BZOJ 1692: [Usaco2007 Dec]队列变换 [后缀数组 贪心]
- [LeetCode] Palindrome Partitioning 拆分回文串
- nyoj 142, poj 1039 ,hdu 1454 管道问题
- sublimeText3安装package control和禁止弹出更新下载弹窗
- 安装Cocoapoads遇到的问题的解决办法
- CSS3秘笈复习:第八章
- GPU
- java利用反射获取类的属性及类型
- Android从无知到有知——NO.1
- windows 安装Mysql压缩包
- CSS3新增伪类--好用的:target
- Qt QLineEdit
- Delphi Format 格式化数字
- java文件转发
- RocketMQ安装教程
- 1. Install Git and GitExtension
- Android ListView setOnItemClickListener/setOnItemSelectedListener,无效
- Hive Python Streaming的原理及写法
- java随笔——HashMap与红黑树
- [Code Festival 2017 qual A] C: Palindromic Matrix
热门文章
- 详细讲解vue.js里的父子组件通信(props和$emit)
- Nginx入门(二)——双机热备
- Selenium常用API的使用java语言之8-模拟鼠标操作
- Solr添加paoding分词器
- css3多列布局瀑布流加载样式
- docker学习(五)
- Codeforces Round #464 (Div. 2) D题【最小生成树】
- bootstrap富文本编辑
- leetcode解题报告(14):Max Consecutive Ones
- 2018-2019 ACM-ICPC, Asia Dhaka Regional Contest