python 基础(四)

python对文件的处理

对于文件的处理 一般包含3步(打开,操作,关闭)

  1. 1.打开文件:

使用open函数打开一个已经存在的文件,或者创建一个新的文件。
open(“文件名”,“访问模式”)
f=open(‘test.txt’,‘w’)
打开方式的模式
在这里插入图片描述

在这里插入图片描述
2.关闭文件

close()
#打开或新建一个文件,文件名为:test.txt
f=open(‘test.txt’,‘w’)
#关闭这个文件f.close()

  1. 文件的操作—读写

(1):写数据:write()

f=open(‘test.txt’,‘w’)
f.write(‘hello world, I am here!’)
f.close()

注意:
如果文件不存在那么创建,如果存在那么先清空,然后写数据。

(2) :读数据(read)

使用read(num)可以从文件中读取数据返回一个字符串,num表示要从文件中读取的数据的长度,
如果没有传入num,默认为所有数据

f=open(‘test.txt’,‘r’)
content=f.read(5)
print(content)
print(type(content))
content=f.read()
print(content)
f.close()

注意:
如果open是打开一个文件,那么可以不用写打开的模式,即只写open(‘test.txt’)

如果使用读了多次,那么后面读取的数据是从上次读完后的位置开始的。
其他的读数据方式:
***readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素。

f=open(‘test.txt’,‘r’)
content=f.readlines()
print(type(content))
i=1
f.close()
***readline 每次只读一行
f=open(‘test.txt’,‘r’)
content=f.readline()
print(‘1:%s’%content)

f.close()

补充:
使用with open() as…读取文件

with open(‘test001.txt’,‘r’) as f:
for line in f:
print(line)

若想要文件想要对汉字进行操作:在访问模式后面加 encoding=”utf-8”
在这里插入图片描述
4.制作文件的备份
在这里插入图片描述
5. 对文件的一些相关操作:
(1):光标位置:
获取当前读写的位置:f.tell()
定位到某个位置:f.seek(offset,from)
offset:偏移量
from:方向
0:表示文件开头
1:表示当前位置
2:表示文件末尾
注意:只能以字节码方式读写,才可以使用1和2
(2)文件的相关操作:
调用 import os包
@文件的重命名:
os模块中的rename()可以完成
rename(老的文件名,新的文件名)
import os
os.rename(‘test.txt’,‘test01.txt’)

@文件的删除:
os模块中的remove()可以完成对文件的删除操作 remove(待删除的文件名)
import os
os.remove(‘test.txt’)

@创建文件夹
import os
os.mkdir(’.’)

@获取当前目录
import os
os.getcwd()

@改变默认目录
os.chdir(’…/’)

@获取目录列表
os.listdir(’./’)

2删除文件夹
os.rmdir(’.’)

#####额外知识点
1 abspath()----获取绝对路径
path= “abc.txt”
print(os.path.abspath(path))

2 os.curdir ----当前目录
path = “F:” + os.path.sep + “workspace” + os.path.sep+ “day07” + os.path.sep
new_path = path +os.curdir
print(os.path.abspath(new_path))

3 exist()----判断一个文件或者路径是否存在
path = “F:” + os.path.sep + “workspace”+os.path.sep + “day06” + os.path.sep
if os.path.exists(path):
print(“存在”)
else:
print(“不存在”)

4isabs()—判断是不是绝对路径
path=“abc.txt”
if os.path.isabs(path):
print(“是绝对路径”)
else:
print(“不是绝对路径”)

5、 ispath()—是不是目录

6、isfile()—是不是文件

path = “D:” + os.path.sep + “Temp”+os.path.sep + “Demo” + os.path.sep
if os.path.isfile(path):
print(“文件”)
else:
print(“目录”)

7、 samefile(path1,path2)----判断path1hepath2两个路径是否指向同一个文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值