15.再走Python路:文件操作

1 文件

  • Linux系统中一切皆文件
  • 使用文件的目的:将一个数据存储放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份。

2 文件打开与关闭

  • 在python中,使用一个open函数,可以打开一个已经存在的文件,或者创建一个新文件(第二个参数为w的时候才会创建新的文档,否则会报找不到文档的异常)
  • open函数有两个参数,第一个是需要打开文件的文件名,第二个为打开为了做什么。
  • 第二个参数里面可以为:r读,w写,a添加(指针将会直接在文件的末尾)。
  • 例如
'''
2020.3.1
@BUG369456
打开文件open函数
'''
# r表示只能读
f = open('v01_test','r')
# w表示可以写
f2 = open("v01_test",'w')
# a表示添加 此时指针一打开就在文件的末尾
f3 = open("v01_test",'a')
#关闭文件统一使用close
f.close()
f2.close()
f3.close()

3 文件的读写操作

  • 当open函数里面第二个参数为‘r’的时候,我们可以使用read函数对文件进行读操作
'''
2020.3.5
@BUG369456
文件的读操作
'''
#打开一个名字叫 v02_test 的文件
f = open("v02_test","r")
#直接将内容全部读写出来
t = f.read()
print(t)
#此时光标已经处于文件的最尾端 所以需要关闭重新打开
#否则read将读取不到东西
f.close()
f = open("v02_test","r")
#按位读取
#进行循环读取 知道读不到内容 退出循环
while True:
    t = f.read(1)
    print(t)
    if t == '':
        break
f.close()
  • 当open函数里面第二个参数为‘w’的时候,我们可以使用write函数对文件进行读操作
'''
2020.3.5
@BUG369456
文件的写操作
'''
f = open("v03_test",'w')
f.write("hello word!")
f.close()

文件的复制

  • 文件的复制归根到底就是文件的读与写
'''
2020.3.5
@BUG369456
文件的复制操作
'''
#打开文件1 得到复制的内容  
#打开文件2 写入复制内容
f1 = open("v04_1",'r')
t = f1.read()
f2 = open("v04_2",'w')
# 关闭文件1 文件2
f2.write(t)
f1.close()
f2.close()

4 文件读写的其他函数

  • readline()按行读取。
  • readlines()多次按行读取,所有行组成了一个元组

5 文件的定位读写

  • 在读写文件的过程中,需要从另外一个位置进行操作的话,可以使用seek(),seek()函数有两个参数。
  • 第一个参数offset:偏移量
  • 第二个函数from:方向
  •   		 0表示文件开头
    
  •   		 1表示当前位置
    
  •   		 2表示文件末尾
    
'''
2020.3.5
@BUG369456
文件读写操作中seek()函数的使用
'''
#显示文件的内容 
f = open('v05','r')
t = f.read()
print(t)
f.close()
#隔空打印
f = open('v05','rb')
while True:
    t = f.read(1)
    if t == b'\n':
        break
    elif t ==b'':
        break
    else:
        print(t.decode())
    f.seek(1,1)
  • 这段代码的运行结果为:
    在这里插入图片描述

文件和文件夹的相关操作

  • 这些步骤需要使用os包 : import os
  • os.rename(“oldname”,“newname”) 将名为oldname的文件重命名为newname
  • os.remove(“Filename”) 删除文件名为Filename 的文件
  • os.mkdir(“filename”) 创建一个名字为filename的文件夹
  • os.rmdir(“filename”) 删除名字filename的文件夹
  • os.getcwd() 获取当前路径
  • os.chdir()跳转到该路径工作
  • os.listdir("./")获取目录 ./表示的是当前路径 可以改成其他的路径

批量重命名

  • 批量重命名代码,功能:创建学习1-5文档并改名为python1-5
'''
2020.3.5
@BUG369456
批量重命名 创建学习1-5文档 改名为python1-5
'''
import os

for i in[1,2,3,4,5]:
    oldName = "学习" + str(i)
    f = open(oldName,'w')
    f.close()
for i in [1,2,3,4,5]:
    oldName = '学习'+ str(i)
    newName = 'python' + str(i)
    os.rename(oldName,newName)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值