Python基础之文件操作及光标移动详解

目录
  • 一、文件操作
    • 1、文件的概念
    • 2、代码打开文件的方式
  • 二、文件读写模式
    • 1、'r' 只读模式 read
    • 2、'w' 只写模式 write
    • 3、'a' 尾部追写模式 add
  • 三、文件操作模式
    • 1、t 文本模式
    • 2、b 二进制模式
  • 四、文件诸多方法
    • 1、read()
    • 2、for循环
    • 3、line
    • 4、readable
    • 5、write
    • 6、flush
  • 五、文件内光标的移动
    • 1、seek()
    • 2、tell()

一、文件操作

1、文件的概念

1.文件就是计算机暴露给用户操作硬盘的快捷方式

2.计算机的文件,就是用来储存某种信息的数据

3.在计算机中,文件是以二进制的方式储存信息的

2、代码打开文件的方式

方式一:
	f = open(文件路径, 读写模式, encoding='utf8')
	f.close()
方式二:  # 子代码运行结束后会自动调用close方法关闭资源
	with open(文件路径, 读写模式,encoding='utf8') as f:
须知:
# 1、open方法的第一个参数是文件路径,并且撬棍跟一些字母的组合会产生特殊的含义导致路径查找混乱 为了解决该问题可以在字符串的路径前面加字母r
	D:\a\n\t
	r'D:\a\n\t'
# 2、with一次性可打开多个文件
	with open() as f1,open() as f2,open() as f3:

二、文件读写模式

1、'r' 只读模式 read

	只能读,不能写
1.文件路径不存在:直接报错
	with open(r'b.txt','r',encoding='utf8') as f:
		print(f.read())
2.文件路径存在:正常读取内容
	with open(r'a.txt', 'r', encoding='utf8') as f:
		print(f.read())

2、'w' 只写模式 write

	只能写,不能看
1.文件路径不存在:  # 创建新的文件
	with open(r'b.txt','r',encoding='utf8') as f:
		pass
2.文件路径存在:  # 先清空文件内容,在重新写入
	with open(r'a.txt', 'r', encoding='utf8') as f:
		f.write('编写内容')
须知:
# 1、编写的内容需要自己加入换行符,在保存后u而要注意他的存在

3、'a' 尾部追写模式 add

	只能在文件末尾添加数据
1.文件路径不存在:  # 创建新的文件
	with open(r'b.txt','a',encoding='utf8') as f:
		pass
2.文件路径存在:  # 在文件末尾添加
	with open(r'a.txt', 'a', encoding='utf8') as f:
		f.write('编写内容')

当我们在编写代码的时候 有些部分不知道写什么具体代码 但是也不能空着不写
这个时候可以使用关键字: pass

作用:是为了保证程序结构的完整性,否则会报错

三、文件操作模式

1、t 文本模式

	文本模式为默认模式
1、读写模式简写:r、w、a
       	全称:rt、wt、at
须知:
# 1、只能操作文本文件
# 2、读写以字符为单位
# 3、需要指定encoding参数,不填写则采用计算机默认的编码

2、b 二进制模式

	byte模式
1、不是默认的模式,需要指定生成
		rb、wb、ab
须知:
# 1、可以操作任意文件
# 2、读写都是以bytes为单位
# 3、不需要指定encoding参数,不需要编码

不管是哪种模式,针对文件路径是否存在的情况都是一样的

四、文件诸多方法

1、read()

代码表现:
	文件名.read()
须知:
#  1、一次性读取文件内容,并且光标停留在文件末尾,继续读取则没有内容
#  2、当文件内容比较多的时候,该方法还可能会造成计算机内存溢出
#  3、括号内可以填写数字,在文本模式下,表示读取几个字符
#  4、通常一个中文三个字节(或更多)一个英文字母一个字节

2、for循环

代码表现:
    for 数据值 in 需要遍历的文件:
须知:
# 1、一行行读取文件内容 避免内存溢出现象的产生

3、line

1、readline
	代码表现:
    文件名.readline()
	须知:
	# 1、一次只读一行内容
2、readlines
	代码表现:
    文件名.readline()
   须知:
	# 1、一次性读取文件内容,会按照行数组织成列表的一个个数据值

4、readable

代码表现:
	代码表现:
    文件名.readable()
须知:
# 1、判断文件是否具备读取数据能力

5、write

1、write
	用于向文件中写入指定数据
	代码表示:
    f = open("a.txt", 'w')
    f.write("写入一行新数据")
    f.close()
2、writeable
	用来判断文件是否可写入数据
	代码表示:
    f = open("nhooo.txt", "a")
    print(f.writable())
    	可以写入: Ture
    	不可写入: False
3、writelines
	用于接收一个列表,一次性将列表中所有数据写入
	代码表示:
    f = open('a.txt', 'r')
    n = open('b.txt','w+')
    n.writelines(f.readlines())
    n.close()
    f.close()

6、flush

用于刷新内部缓冲区,这是在python中处理fila处理时的最佳实践,可以在将新文本写入/添加到文件之前清除内部缓冲区。将内存中文件数据立刻刷到硬盘 等价于ctrl + s

代码表示:

	 file_object.flush()

五、文件内光标的移动

1、seek()

	移动文件的读取指针到指定位置。seek函数需要使用文件对象进行调用,无返回值。
	seek()有三种用法:
   	seek(offset,whence)
    offset  控制光标移动的位移量(字节)
    whence  模式
        0   基于文件开头移动多少字节
        1   基于光标当前所在位置移动多少字节
        2   基于文件末尾移动多少字节
    ps:1和2只能在二进制模式下使用 0无所谓

2、tell()

	用来获取光标当前的位置(移动的字节数)
    代码表示:
    文件名.tell()
    # 返回光标当前所在的字节数

以上就是Python基础之文件操作及光标移动详解的详细内容,更多关于Python文件操作光标移动的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python文件操作和数据格式详解(简单简洁)

    目录 一.文件操作 1.文件的基本操作 2.读文件 3.写文件 4.os模块的使用 二.JSON 总结 一.文件操作 前言: 什么是计算机的流? "流"指的是在不同的输入/输出等设备(键盘.内存.显示器.音响等)之间进行传递数据. 例如:在Python中使用input()函数,就会产生数据经过键盘流输入到存储器. print() 就会有数据从存储器中流出到屏幕.所以流实际上就是一个字节序列. 就如同管道中的水 “流来流去”; 1.文件的基本操作 Python中可以通过内置函数open(

  • python处理xml文件操作详解

    目录 1.python 操作xml的方式介绍 2.ElementTree模块 3.解析xml格式字符串并获取根节点 4.读取节点内容,getroot() 5.通标标签名直接获取标签(find,findall) 6.全文搜索标签名(类似xpath路径查找标签) 7.修改节点 8.删除节点 9.构建文件 方式1 (Element) 方式2 (makeelement) 方式3 1.python 操作xml的方式介绍 查看全部包含“三种⽅法: ⼀是xml.dom. * 模块,它是W3CDOMAPI的实现

  • Python常见文件操作的示例详解

    目录 从文件中读取数据 为什么要提供文件路径 逐行读取 创建一个包含文件各行内容的列表 使用文件中的内容 包含千位以上的大型文件 圆周率中包含你的生日吗 写入文件 附加到文件 从文件中读取数据 1:读取整个文件 首先创建一个文件,它包含一些文本信息,注意:如果该文件为.py文件,则再进行操作的时候可以不写路径,如果不是.py文件,则必须标明路径. 现在我们创建一个python文件,名为text.py,给他写入如下文本信息: 下面的程序打开并读取这个文件,再将其内容显示到屏幕上: with ope

  • Python 移动光标位置的方法

    如下所示: x = file('1.txt','r') print x.tell() #显示当前光标位置 x.seek(3) print x.tell() #没有设置光标位置,默认从头开始移动3个位置 x.seek(5, 1) print x.tell() #从当前开始移动5个位置 x.seek(2, 2) print x.tell() #从末尾开始向前移动2个位置 以上这篇Python 移动光标位置的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Python3读取文件的操作详解

    目录 1.引言 2. fileinput 2.1 方法介绍 2.2 默认读取 2.3 处理一个文件 2.4 处理批量文件 2.5 读取与备份 2.5 重定向替换 2.6 进阶 3.总结 1.引言 小鱼:小屌丝, 这段代码为什么要开两个线程? 小屌丝:因为我要读写文件,还要备份文件,所以就开两个线程了. 小鱼:嗯,想法是对的,但是,还有一种简便的方法, 不需要开两个线程就能搞得定的. 小屌丝:额…难道是with open? 小鱼:不是. 小屌丝:那还有啥呢? 我咋想不起来了. 小鱼:嗯,这个方法很

  • Python文件操作的方法

    目录 1.文件的概念 1.1文件的概念和作用 1.2文件的存储方式 2.文件的基本操作 2.1操作文件的套路 2.2操作文件的函数/方法 2.3read方法--读取文件 2.4打开文件的方式 2.5按行读取文件内容 2.6文件读写案例--复制文件 小文件复制 大文件复制 2.7文件读写中的函数 3.文件/目录的常用管理操作 4.文本文件的编码方式 5.拓展:eval函数 目标: 文件的概念 文件的基本操作 文件/文件夹的常用操作 文本文件的编码方式 1.文件的概念 1.1文件的概念和作用 计算机

  • Python文件操作之二进制文件详解

    目录 1.二进制读取模式 rb读取模式 将读取到的内容写入到文件 总结 1.二进制读取模式 rt 读取文本文件(默认值) rb 读取二进制文件 file_name = "C:/Users/cheng/Desktop/can.jmx" with open(file_name, 'rt', ) as can: print(can.read()) 执行结果 rb读取模式 file_name = "C:/Users/cheng/Desktop/can.jmx" with o

  • Python基础之文件操作及光标移动详解

    目录 一.文件操作 1.文件的概念 2.代码打开文件的方式 二.文件读写模式 1.'r' 只读模式 read 2.'w' 只写模式 write 3.'a' 尾部追写模式 add 三.文件操作模式 1.t 文本模式 2.b 二进制模式 四.文件诸多方法 1.read() 2.for循环 3.line 4.readable 5.write 6.flush 五.文件内光标的移动 1.seek() 2.tell() 一.文件操作 1.文件的概念 1.文件就是计算机暴露给用户操作硬盘的快捷方式 2.计算机

  • python基础之文件操作

    1.打开文件 open()函数简介 : 打开文件使用open函数,可以打开一个已经存在的文件,如果没有这个文件的话,会创建一个新文件 完整的语法格式为: open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 参数说明:(一般只会用到前三个) file: 必需,文件路径(相对或者绝对路径). mode: 可选,文件打开模式 encoding: 一

  • python基础_文件操作实现全文或单行替换的方法

    python修改文件时,使用w模式会将原本的文件清空/覆盖.可以先用读(r)的方式打开,写到内存中,然后再用写(w)的方式打开. 1.替换文本中的taste 为 tasting Yesterday when I was young 昨日当我年少轻狂 The taste of life was sweet 生命的滋味是甜的 As rain upon my tongue #将文件读取到内存中 with open("./fileread.txt","r",encoding

  • Python文件操作函数用法实例详解

    这篇文章主要介绍了Python文件操作函数用法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 字符编码 二进制和字符之间的转换过程 --> 字符编码 ascii,gbk,shit,fuck 每个国家都有自己的编码方式 美国电脑内存中的编码方式为ascii ; 中国电脑内存中的编码方式为gbk , 美国电脑无法识别中国电脑写的程序 , 中国电脑无法识别美国电脑写的程序 现在硬盘中躺着 ascii/gbk/shit/fuck 编码的文件,

  • Python高级文件操作之shutil库详解

    前言 什么算是高层的文件操作呢? 普通的文件操作,我们一般只涉及创建文件,文件夹以及写入文件等等.假如我现在需要复制一个文件的内容到另一个文件之中,用pathlib等都只能先打开复制文件,然后进行将其读出来保存,然后再写入新的文件,这种普通的复制操作,无形之中增加了许多步骤. 而shutil库可以直接完成复制符间的操作,同时还支持归档.本篇,将详细介绍文件的高层次操作. 一.copyfile() copyfile()函数用于将一个文件的内容复制到另一个文件之中,准备的来说,它不是copy内容,而

  • Python学习之文件的创建与写入详解

    目录 内置函数 - open 获取文件对象 open() 函数 利用文件对象进行创建与写入 文件操作的写入模式 文件对象的写入操作方法 实战小案例 在前面章节我们通过 os包学习了如何创建.读取一个文件夹,但是并没有学习如何创建.读写一个文件,接下来我们就学习关于文件的处理.当我们学习完文件处理之后,就可以随意读写文件. 内置函数 - open 获取文件对象 open() 函数 open()函数是是python的读写文件的基本函数,它可以生成文件对象可以创建,也可以操作文件的读写. 用法: op

  • Python基础教程之浅拷贝和深拷贝实例详解

    Python基础教程之浅拷贝和深拷贝实例详解            网上关于Python的深拷贝和浅拷贝的文章很多,这里对三种拷贝进行比较并附实例,大家可以参考下 一般的复制 #encoding:utf-8 #定义一个嵌套集合 lista=[1,2,3,[4,5,6,[7,8,9]]] listb=lista #分别打印出 lista和listb的地址值 print id(lista) #4511103096 print id(listb) #4511103096 #修改lista中的内容,li

  • 对python修改xml文件的节点值方法详解

    这是我的xml文件结构 <?xml version='1.0' encoding='utf-8'?> <annotation> <folder>JPEGImages</folder> <filename>train_2018-05-08_1000.jpg</filename> <path>D:\all_data\2018-05-08\JPEGImages\train_2018-05-08_1000.jpg</path

  • 利用Python中xlwt模块操作excel的示例详解

    目录 一.安装 二.创建表格并写入 三.设置单元格样式 四.设置单元格宽度 五.设置单元格背景色 六.设置单元格内容对齐方式 七.单元格添加超链接 八.单元格添加公式 九.单元格中输入日期 十.合并行和列 十一.单元格添加边框 一.安装 pip install xlwt 二.创建表格并写入 import xlwt # 创建一个workbook并设置编码 workbook = xlwt.Workbook(encoding = 'utf-8') # 添加sheet worksheet = workb

  • Python基础之dict和set的使用详解

    目录 dict set 再议不可变对象 小结 dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言种也称为map,使用键-值(key-value)存储,具有极快的查找速度. 举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list: name = ['Micael','Bob','Tracy'] scores = [95.75,85] 给定一个名字,要查找对应的成绩,就先要在names种找到对应的位置,在从scores取出对应的

随机推荐