Python文件的读写

一、写数据

1 f = open("hello.txt", "w")
2 f.write("hello world python!")
3 f.close() #关闭文件必不可少

如果文件不存在就创建,如果存在就清空里面的内容,然后写入数据。

二、读数据

1 f = open("hello.txt", "r")
2 content = f.read()
3
4 print(content)
5 f.close() #关闭文件必不可少

要找个变量将读取的内容存储起来,如果没有向read后的括号传入数据,则默认读取整个文件的内容,与readlines()的功能一致,使用readlines()

返回的是一个列表,每一行数据为一个元素;另外readline()每次只读取一行数据. 如果传入一个值比如1,就读取一个字节的数据. 如果使用了多次

读数据操作,那么后来读取的数据是从上次读完后的位置开始的.

三、文件的随机读写
1、使用tell()获取当前读写的位置

 1 f = open("匿名函数.py", "r", encoding=‘UTF-8‘) #文件中含有中文时加上 encoding=‘UTF-8‘
 2 str = f.read(4)
 3
 4 print("读取的数据是:"+str)
 5
 6 position = f.tell() #获取当前读写的位置
 7 print(position)
 8
 9 str = f.read(4) #在接着读取4字节的数据
10 print(str)
11
12 position = f.tell() #获取当前读写的位置
13 print(position)
14
15 f.close()

2、定到某个位置
如果在读写文件的过程中,需要从另外一个位置进行操作的话,可以使用seek()
seek(offset,form) 有两个参数:
 offset:偏移量
 from:方向
   0:表示文件开头
   1:表示当前位置
   2:表示文件末尾

 1 f = open("匿名函数.py", "r", encoding=‘UTF-8‘) #文件中含有中文时加上 encoding=‘UTF-8‘
 2 str = f.read(10)
 3
 4 print("读取的数据是:"+str)
 5
 6 #查找当前位置
 7 position = f.tell()
 8 print(position)
 9
10 #重新设置位置
11 f.seek(5,0)
12
13 #查找当前位置
14 position = f.tell()
15 print(position)
16
17 f.close()

四、文件的相关操作

1、重命名

1 import os
2
3 os.rename("论文第一版.txt", "论文最终版.txt")

2、删除文件

1 import os
2
3 os.remove("论文第一版.txt")

五、文件夹的相关操作

1、创建文件夹

1 import os
2
3 os.mkdir("hello")

2、获取当前目录

1 import os
2
3 os.getcwd()

3、改变默认目录

1 import os
2
3 os.chdir("../")

4、获取目录列表

1  import os
2
3 os.listdir("./")

5、删除文件夹

1 import os
2
3 os.rmdir("hello")

应用一:制作文件的备份(就是文件的复制),不适用于大文件的备份

步骤:
1.获取要复制的文件名(xxx.txt) 通过input()输入
2.打开这个文件("r")
3.创建一个文件 xxx[复件].txt
4.从原文件中读取数据
5.将读取的文件数据写入到新文件中
6.关闭两个文件

 1 f_old_name = input("请输入要备份的文件名(要加后缀名):")
 2
 3 f_read = open(f_old_name, "r")
 4
 5 position = f_old_name.rfind(".")
 6
 7 f_new_name = f_old_name[0:position] + "[复件]" + f_old_name[position:]
 8
 9 f_write = open(f_new_name, "w")
10
11 content = f_read.read()
12
13 f_write.write(content)
14
15 f_read.close()
16 f_write.close()

升级版,适用于大文件的备份、读取

 1 f_old_name = input("请输入要备份的文件名(要加后缀名):")
 2
 3 f_read = open(f_old_name, "r", encoding=‘UTF-8‘) #文件中含有中文时加上 encoding=‘UTF-8‘
 4
 5 position = f_old_name.rfind(".")
 6
 7 f_new_name = f_old_name[0:position] + "[复件]" + f_old_name[position:]
 8
 9 f_write = open(f_new_name, "w")
10
11 #用循环改进
12 while True:
13   content = f_read.read(1024) #一次读取1024字节
14
15   if len(content) == 0: #当读取的内容为空时退出循环
16     break
17
18   f_write.write(content)
19 f_read.close()
20 f_write.close()

应用二:批量修改文件名

 1 #获取一个要重命名的文件名字
 2 folder_name = input("请输入文件夹的名称:")
 3
 4 #获取那个文件夹中所有的文件名
 5 file_names = os.listdir(folder_name)
 6
 7 #第一种方法
 8 os.chdir(folder_name)
 9
10 for file_name in file_names:
11     print(file_name)
12     os.rename(file_name, "京东出品-"+file_name)
13
14
15 #第二种方法
16 for file_name in file_names:
17     #print(file_name)
18     old_file_name = "./"+ folder_name + "/" +file_name
19     new_file_name = "./"+folder_name+"/"+"[京东出品]-"+file_name
20     os.rename(old_file_name, new_file_name)

原文地址:https://www.cnblogs.com/yxtz271828/p/8992091.html

时间: 2024-10-11 19:48:36

Python文件的读写的相关文章

python文件的读写操作

文件的读写步骤: 1.打开文件 open(path, flag[, encoding][, errors]) path:要打开文件的路径 flag:打开方式 'r': 以只读的方式大开发文件,文件的描述符放在文件的开头 'rb': 以二进制格式打开一个文件用于制度,文件的描述符放在文件的开头 'r+': 打开一个文件用于读写,文件的描述符放在文件的开头 'w': 打开一个你文件只用于写入,如果该文件已经存在,会覆盖,如果不存在则创建新文件. 'wb':  打开一个你文件只用于写入二进制,如果该文

#Python 文件的读写

#文件读写模式 模式 描述 r 以只读方式打开文件.文件的指针将会放在文件的开头.这是默认模式. rb 以二进制格式打开一个文件用于只读.文件指针将会放在文件的开头.这是默认模式. r+ 打开一个文件用于读写.文件指针将会放在文件的开头. rb+ 以二进制格式打开一个文件用于读写.文件指针将会放在文件的开头. w 打开一个文件只用于写入.如果该文件已存在则将其覆盖.如果该文件不存在,创建新文件. wb 以二进制格式打开一个文件只用于写入.如果该文件已存在则将其覆盖.如果该文件不存在,创建新文件.

python—文件的读写之小爬虫网站

1.导入相应的包 2.设置请求的网站.写入的文件以及内容. 3.运行结果 原文地址:https://www.cnblogs.com/xzxgiser/p/12543167.html

python文件

python文件的读写 在python中以只读模式打开文件的时候,会自动将文件的内容进行清空,然后在将数据写到文件中. 打开文件以后,使用write方法的时候,每调用一次write方法,都会将内容写道文件中,会紧跟着上一次文件结尾的地方. 在文件关闭和使用flush函数之后,会将对应的数据写到文件中,在此之前,全部都是保存在缓冲区中的. 打开文件记得关闭文件,这是一个好的习惯.

Python 文件操作之读写错误

错误还原: 读错误 在对文件进行读操作过程中,试图将txt文件中的数据按照4个字节的大小(1点)依次读出并进行数据处理 ,可读到ae99 1a41时,数据不再连续,1a无法读出,百思不得其解,各种尝试后仍然一筹莫展,一度怀疑python对于文件操作存在bug. 代码如下: uartfile = open('addata0.txt','r') data = uartfile.read(4) 写错误 对文件写操作时,产生同样错误,再遇到0a0d时无法连续写入. 基础知识: 文件的读写操作存在两种模式

[Python 3系列]读写文件

文件路径 文件有两个关键属性:"文件名"和"路径".路径指明了文件在计算机上的位置. 在windows上,路径书写使用倒斜杠作为文件夹之间的分隔符.但在OS X和Linux上,使用正斜杠作为它们的路径分隔符.如果想要程序运行在所有操作系统上,在编写python脚本时,必须处理这两种情况. 如果将单个文件和路径上的文件夹名称的字符串传递给os.path.join()函数,它会返回一个文件路径的字符串,包含正确的路径分隔符. >>> import os

python文件读写小结

读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件.(这个mode参数默认值就是r) 如果文件不存在,open()函数就会抛出一个IOError的错误,并且给出错误码和详细的信息告诉你文件不存在: >>> f=open('test.txt', 'r') Traceback (most recent call last): File &quo

【Python】Python对文件的读写操作

刚刚接触Python,感觉其对文件的操作还是很方便的.下面是我入门Python对文件操作的一个简单程序,希望对初学者有所帮助. test.py def processFile(inputFile, outputFile): #定义一个函数 fin = open(inputFile, 'r') #以读的方式打开文件 fout = open(outputFile, 'w') #以写得方式打开文件 for eachLine in fin: #读取文件的每一行 line = eachLine.strip

python文件读写操作与linux shell变量命令交互执行

python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼! 1 #coding=utf-8 2 #!/usr/bin/python 3 import os 4 import time 5 #python执行linux命令 6 os.system(':>./aa.py') 7 #人机交互输入 8 S = raw_input("input:") 9 os.environ['S']=str(S) 10 #把字符串S写入文件 11 outpu