100天大数据零基础入门到就业------第五天:文件

一、文件的基本操作

① 打开文件

② 读写文件

③ 关闭文件

1.open函数 

使用open()函数,可以打开一个已经存在的文件,或者创建一个新文件

f = open(name,mode) 

name :是要打开的目标文件名的字符串(可以是包含文件所有具体路径)

mode: 设置打开文件的模式(访问模式):只读r、写入w、追加a等。

 r模式:代表以只读模式打开一个已存在的文件,后续我们对这个文件只能进行读取操作。如果文件不存在,则直接报错。另外,r模式在打开文件时,会将光标放在文件的第一行(开始位置)。

w模式:代表以只写模式打开一个文件,文件不存在,则自动创建该文件。w模式主要是针对文件写入而定义的模式。但是,要特别注意,w模式在写入时,光标也是置于第一行同时还会清空原有文件内容。

a模式:代表以追加模式打开一个文件,文件不存在,则自动创建该文件。a模式主要也是针对文件写入而定义模式。但是和w模式有所不同,a模式不会清空文件的原有内容,而是在文件的尾部追加内容。

2.write函数写入文件

f.write('要写入的内容,要求是一个字符串类型的数据') 

3.close函数关闭文件

f.close()

4.入门级案例 

# 1、打开文件
f = open('python.txt', 'w', encoding='utf-8')
# 2、写入内容
f.write('人生苦短,我学Python!')
# 3、关闭文件
f.close()

 5.文件的读取操作

read(size)方法:主要用于文本类型或者二进制文件(图片、音频、视频...)数据的读取

size: 表示要从文件中读取的数据的长度(单位是字节),如果没有传入size,那么就表示读           取文件中所有的数据。

# 1、打开文件
f = open('python.txt', 'r', encoding='utf-8')
# 2、使用read()方法读取文件所有内容
contents = f.read()
print(contents)
# 3、关闭文件
f.close()

readlines()方法:主要用于文本类型数据的读取

readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素。  

# 1、打开文件
f = open('python.txt', 'r', encoding='utf-8')
# 2、读取文件
lines = f.readlines()
for line in lines:
    print(line, end='')
# 3、关闭文件
f.close()

二、文件和文件夹操作 

1.os模块

函数功能
os.rename(目标文件名,新文件名)对文件进行重命名
os.remove(要删除文件名称)对文件进行删除
# 第一步:导入os模块
import os
# 第三步:引入time模块
import time

# 第二步:使用os.rename方法对python.txt进行重命名
os.rename('python.txt', 'linux.txt')



# 第四步:休眠20s
time.sleep(20)


# 第五步:删除文件(linux.txt)
os.remove('linux.txt')

 2.与文件夹操作相关操作

函数功能
os.mkdir(新文件夹名称)创建一个指定名称的文件夹
os.getcwd()current work directory,获取当前目录名称
os.chdir(切换后目录名称)change directory,切换目录
os.listdir(目标目录)获取指定目录下的文件信息,返回列表
os.rmdir(目标目录)用于删除一个指定名称的"空"文件夹

# 导入os模块
import os


# 1、使用mkdir方法创建一个images文件夹
if not os.path.exists('images'):
	os.mkdir('images')

if not os.path.exists('images/avatar')
    os.mkdir('images/avatar')

# 2、getcwd = get current work directory
print(os.getcwd())

# 3、os.chdir,ch = change dir = directory切换目录
os.chdir('images/avatar')
print(os.getcwd())

# 切换到上一级目录 => images
os.chdir('../../')
print(os.getcwd())

# 4、使用os.listdir打印当前所在目录下的所有文件,返回列表
print(os.listdir())

# 5、删除空目录
os.rmdir('images/avatar')

 三、文件操作综合案例

需求:批量修改文件名,既可添加指定字符串,又能删除指定字符串。

步骤:

① 设置添加删除字符串的的标识python-(file1.txt => p)

② 获取指定目录的所有文件

③ 将原有文件名添加/删除指定字符串,构造新名字

④ os.rename()重命名  

# 1、导入os模块
import os
# 2、定义一个要重命名的目录
path = 'static'
# 3、切换到上面指定的目录中
os.chdir(path)
# 5、定义一个标识,用于确认是添加字符还是删除字符
flag = int(input('请输入您要执行的操作(1-添加字符,2-删除字符):'))
# 4、对目录中的所有文件进行遍历输出 => os.listdir()
for file in os.listdir():
    # 5、判断我们要执行的操作(1-添加字符,2-删除字符)
    if flag == 1:
        # 01.txt => python-01.txt
        newname = 'python-' + file
        # 重命名操作
        os.rename(file, newname)
        print('文件批量重命名成功')
    elif flag == 2:
        # python-01.txt => 01.txt
        index = len('python-')
        newname = file[index:]
        # 重命名操作
        os.rename(file, newname)
        print('文件批量重命名成功')
    else:
        print('输入标识不正确,请重新输入...')

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据小子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值