初识文本的基本操作

怎么在文件里面写内容和都内容

文件操作过程

1,找到文件

文件路径

2,打开文件

file_obj=file(文件路径,模式)

3,文件操作,读写文件

file_obj.read()  #将所有读入内存

file_obj.readlines() #将所有读入内存然后按照一行行隔开,会得到一个一行为单位的列表

for line in file_obj:

#每次循环,只读一行。避免全部读入内存

file_obj.write()  #写

file_obj.writeline() #一行行写

4,关闭文件

file_obj.close()

file_obj = file ("文件路径","模式")

打开文件的模式有:

.r,以只读方式打开文件

.w,打开一个文件只用于写入

.a,打开一个文件用于追加

.rw 打开一个文件用于读写

操作

新建一个log.txt 内容如下

alex;123;1
eric;456;2
新建一个脚本file_test.py

#!/usr/bin/python
# -*- coding:utf-8 -*-
file_obj = file('/server/scripts/log.txt','r')
print file_obj.read()
file_obj.close()

执行 全部读取出来了

python file_test.py
alex;123;1
eric;456;2
把read修改成readlines然后执行 按照列表方式读取出来

python file_test.py
['alex;123;1\n', 'eric;456;2\n']

修改代码

#!/usr/bin/python
# -*- coding:utf-8 -*-
file_obj = file('/server/scripts/log.txt','r+')
#print file_obj.read()
#print file_obj.readlines()
line_list = file_obj.readlines()
my_list = []
for ele in line_list:
        line = ele.strip()
        #ele为字符串'alex;123;1\n'去掉尾部的换行 line='alex;123;1'
        value_list = line.split(';')
        #使用;作为分隔符生成一个列表value_list为='alex','123','1']
        last_value = int(value_list[-1])
        #把尾部字符1转换成数值赋值给last_value
        last_value += 1
        #last_value自增1为2
        value_list[-1] = str(last_value)
        #把自增数值为2在抓换成字符赋值给最后一位value_list=['alex','123','2']
        value_str = ';'.join(value_list)
        #使用;作为连接符把列表转换成字符串value_str='alex;123;2'
        my_list.append(value_str)
        #空的列表赋值my_list=['alex;123;2']一个元素为alex;123;2
my_str = '\n'.join(my_list)
        #使用换行符\n作为连接符号拆分列表,前面执行过两次循环了my_list=['alex;123;2','eric;456;3']
        #拆分以后变成字符串才能写入到文件my_str='alex;123;2\neric;456;3'
file_obj.write(my_str)
        #把my_str字符串写入到文件log.txt
file_obj.flush()
file_obj.close()

执行

python file_test.py
屏幕没有输出但是文件log.txt内容变了(把最后一行数值加1追加到尾部)
alex;123;1
eric;456;2
alex;123;2
eric;456;3

Python初识文本基本操作的更多相关文章

  1. Python初识与简介【开篇】

    目录 1.扯淡 2.Python历史 3.Python简介 4.Python应用 5.为什么是python而不是其他语言? 6.Python的种类 7.Python的特点 8.Python设计哲学 9 ...

  2. python初识(二)

    目录: 进制 基本数据类型 整形 布尔值 字符串 列表 元祖 字典 集合 range & enumerate 一.进制 二进制转换十进制计算: 十进制:==47 一个字节公式:==128 64 ...

  3. python统计文本中每个单词出现的次数

    .python统计文本中每个单词出现的次数: #coding=utf-8 __author__ = 'zcg' import collections import os with open('abc. ...

  4. 小学生绞尽脑汁也学不会的python(初识面对对象)

    小学生绞尽脑汁也学不会的python(初识面对对象) 一. 面向对象思想 1. 面向过程. 重点在"过程". 按照实物的发展流程. 先干嘛,后干嘛, 最后干嘛.... 优点: 简单 ...

  5. Python菜鸟文本处理4种方法

    自从认识了python这门语言,所有的事情好像变得容易了,作为小白,逗汁儿今天就为大家总结一下python的文本处理的一些小方法. 话不多说,代码撸起来. python大小写字符互换 在进行大小写互换 ...

  6. Python Tkinter 文本框(Entry)

    Python Tkinter 文本框用来让用户输入一行文本字符串. 你如果需要输入多行文本,可以使用 Text 组件. 你如果需要显示一行或多行文本且不允许用户修改,你可以使用 Label 组件. 语 ...

  7. #Python绘制 文本进度条,带刷新、时间暂缓的

    #Python绘制 文本进度条,带刷新.时间暂缓的 #文本进度条 import time as T st=T.perf_counter() print('-'*6,'执行开始','-'*6) maxx ...

  8. python根据文本生成词云图

    python根据文本生成词云图 效果 代码 from wordcloud import WordCloud import codecs import jieba #import jieba.analy ...

  9. Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式

    Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式 解决: xlwt 中设置单元格样式主要 ...

随机推荐

  1. 【VB超简单入门】五、基本输出输入

    之前讲了VB IDE的基本操作和概念,接下来要开始将VB语言的编程了. 程序最重要的部分是输出和输入,输入数据,经过计算机处理,再输出结果.本文将介绍两种最基本的输出输入方法,分别是Print.Msg ...

  2. bootstrap file input 官方文档翻译

    file Input官方文档 中文翻译 file input 特性 1.这个插件会把简单的html文件变成一个更好用的文件选择输入控件,通过一个html的文件输入框,能兼容那些不支持jquery或js ...

  3. Mysql数据库读写分离Amoeba

    1.理解读写分离的原理 随着一个网站的业务不断扩展,数据不断增加,数据库的压力也会越来越大,对数据库或者SQL的基本优化可能达不到最终的效果,我们可以采用读写分离的策略来改变现状.读写分离现在被大量应 ...

  4. 面向对象的三大特征——封装、继承、多态(&常用关键字)

    一.封装 Encapsulation 在面向对象程式设计方法中,封装是指,一种将抽象性函式接口的实作细节部份包装.隐藏起来的方法. 封装的概念(针对服务器开发,保护内部,确保服务器不出现问题) 将类的 ...

  5. 【Electron】Electron开发入门(四):操作PC端文件系统

    一.调用PC端默认方式打开本地文件 在main.js里 // 打开系统本地文件或者网页链接 const {shell} = require('electron'); // Open a local f ...

  6. instance 网卡是如何被拉起来的?- 每天5分钟玩转 OpenStack(172)

    instance 的网卡是如何被配置并拉起的?这是理解和用好 cloud-init 非常关键的一步.我们先讨论一个最简单基础的场景:镜像中没有安装 cloud-init. 此时 instance 启动 ...

  7. Java并发编程:线程的基本状态

    一.线程的基本状态 线程基本上有5种状态,分别是:NEW.Runnable.Running.Blocked.Dead. 1)新建状态(New) 当线程对象对创建后,即进入了新建状态,如:Thread ...

  8. android开发之-Android 开发之4.0界面设计原则-整理

    设计原则: 一.让人着迷: 1.给人惊喜:使用漂亮的界面.精心的动画.适时的音乐. 2.真实的对象比按钮和菜单更有趣   这句话的意思是:使用描述描述性的图标作为快捷方式,界面美观   当然这个快捷方 ...

  9. Spring基础学习(三)—详解Bean(下)

    一.Bean的生命周期 1.概述      Spring IOC容器可以管理Bean的生命周期,Spring 允许在Bean的生命周期的特定点执行定制的任务.      Spring IOC容器对Be ...

  10. 跟着刚哥梳理java知识点——泛型(十三)

    一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: public class GenericTest { public static void main(String[] a ...