Python文件操作2

简介: 【10月更文挑战第18天】

【10月更文挑战第18天】
文件流:临时文件,py文件执行完,临时文件占用内存,自动回收

如果我们要使用临时文件的话,那么我们是需要进行数据的导入的

io流

文件流分为:字符串类型、字符串类型

字符串类型的流

import io

s=io.StringIO()#生成一个字符串类型的临时文件
s.write('hello')
s.seek(0,0)#将光标放到开头
print(s.read())

字节类型的流

import io
b=io.BytesIO()#生成一个字节类型的临时文件
#我们需要进行编码操作
b.write('你好'.encode())#只能写入字节数据,需要进行编码
print(b.getvalue())
#b'\xe4\xbd\xa0\xe5\xa5\xbd'
#字节的访问就是getvalue()
#如果像变成我们能看懂的东西,那么就进行解码操作
print(b.getvalue().decode())
#你好

image.png
操控电脑上的文件,需要导入os模块

image.png

文件夹的创建

使用os.mkdir

import os
os.mkdir('凯子坚持C')

image.png

如果我们想要固定创建的位置的话,我们就需要使用相对路径

import os
os.mkdir(r'D:\作业\凯子坚持C')

image.png

如果是同一个文件夹的话,那么我们使用相对路径就行了

文件夹的重命名操作

现在我们的桌面是有一个文件的---凯子坚持C.txt

我们如何对这个文件进行重命名的操作呢?

使用os.rename

import os
os.rename("凯子坚持C",'小凯')

image.png

文件夹的查询操作

获取当前文件的位置

os.getcwd()---返回值就是当前文件的位置

import os
print(os.getcwd())#获取当前文件的位置
#C:\Users\27890\Desktop

获取当前文件夹内所有的文件

os.listdir()

import os
print(os.listdir())#获取当前文件夹内所有的内容

image.png

这些操作我们也是可以进行路径的指定的,获取指定文件夹中所有的内容

删除文件夹

删除空文件夹os.rmdir("文件名")

import os
os.rmdir("小凯")#删除空文件夹

将文件夹进行删除

os.remove

import os
os.remove("文件名")

对图片进行操作

如果想打开图片的话,那么我们需要用字节的方式进行打开

那么我们的读取模式从r变成rb

b是以字节的方式进行读取

这里我进行读取是十分卡顿的,因为这个图片的字节是很多的

with open(r"C:\Users\27890\Desktop\微信图片_20240906224155.png",mode='rb') as f:
    print(f.read())

image.png

b:以字节方式打开内容

应用于打开图片、音频、视频等非文字文件

对图片进行复制的操作

我们需要先拿到需要复制的文件信息

然后再进行复制

我们先定义一个变量,将要复制图片的信息进行存储

with open(r"C:\Users\27890\Desktop\微信图片_20240906224155.png",mode='rb') as f:
    data=f.read()


#我们这里不能在用rb了,因为我们要复制这个图片了,所以我们用wb
with open(r"C:\Users\27890\Desktop\微信图片_20240906224155附件.png",mode='wb') as f:
    f.write(data)

image.png
从名字我们就能看出这个图片我们进行复制成功了

我们需要先打开这个我们要复制的图片,将获取的信息用变量进行保存

然后利用这个变量进行文件的创建

最后就得到了这个复制的图片

正则表达式是一种通用的用来简洁表达一组字符串的表达式,利用正则表达式可以方便快捷的匹配和筛选字符串

举个例子:在一堆数据中进行电话号码的寻找,我们需要根据电话号码的特征在这一堆数据进行电话的寻找,电话是11位数的,全是数字,基于特征进行寻找

正则的一些方法都是放在re模块的

re 模块使 Python 语言拥有全部的正则表达式功能。

re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。

所以我们如果想使用正则表达式的话,我们是先进行将正则表达式导入re的操作

正则在爬虫里面很常见的,在大量的字符串里面进行数据的寻找

对于正则表达式来说,我们需要描述我们的需求,我们怎么写

对什么样的数字进行一系列的操作

比如说我们需要进行电话号码的匹配

11位,并且是数字

'\d{11}'

'1[3-9]\d{9}'----第一个数字只能是1,第二个数字是3-9之间的,后面的就是\d了,然后总长度限制为9

image.png

相关文章
|
3月前
|
存储 Python
Python文件操作(1)
【10月更文挑战第17天】
Python文件操作(1)
|
6月前
|
监控 Java 数据处理
文件操作不再难!Python系统编程实战,带你轻松驾驭文件系统与I/O
【7月更文挑战第31天】在 Python 系统编程中, 文件操作与 I/O 管理至关重要。
67 2
|
7月前
|
开发者 Python
Python基础第七篇(Python的文件操作)
Python基础第七篇(Python的文件操作)
|
7月前
|
存储 安全 开发者
文件操作?Python让你轻松搞定!
【6月更文挑战第12天】Python编程中的文件操作至关重要,涉及数据存储和系统交互。通过内置的`open()`函数,开发者可轻松处理文件。以只读模式`'r'`为例,使用`with`语句打开并读取文件内容;写入文件则用`'w'`或`'a'`模式。文件对象还支持高级功能,如文件指针移动,允许随机访问。掌握这些技能能提升开发效率。
41 0
|
4月前
|
存储 Python
Python文件操作
Python文件操作
|
4月前
|
存储 安全 Python
30天拿下Python之文件操作
30天拿下Python之文件操作
35 1
|
4月前
|
监控 安全 Java
文件操作不再难!Python系统编程实战,带你轻松驾驭文件系统与I/O
【9月更文挑战第13天】在Python系统编程中,文件操作与I/O管理至关重要。本文通过五个实战案例分享最佳实践:高效遍历文件系统、优雅处理文件读写、利用缓冲机制优化性能、并行处理文件加速任务以及异常处理确保程序稳健。使用pathlib、上下文管理器及concurrent.futures等工具,助你轻松掌握Python文件系统与I/O操作,提升编程效率和项目质量。 示例代码展示了如何使用pathlib遍历目录、with语句安全读写文件、控制缓冲区大小、并行处理多个文件以及捕获异常保证程序稳定运行。通过这些技巧,你将能够在实际项目中更加高效地管理和操作文件。
52 6
|
5月前
|
IDE 测试技术 开发工具
Python接口自动化测试框架(基础篇)-- 不只是txt的文件操作
本文介绍了Python中的文件操作方法,包括使用open()打开文件、close()关闭文件、read()读取内容、readline()读取单行、readlines()读取多行、write()写入内容以及writelines()写入多行的方法。同时,探讨了文件操作模式和编码问题,并扩展了上下文管理器with...as的使用,以及对图片和音频文件操作的思考和练习。
41 1
Python接口自动化测试框架(基础篇)-- 不只是txt的文件操作
|
3月前
|
Java 程序员 Python
【Python】文件操作
【Python】文件操作
26 0
|
5月前
|
安全 Python
python文件操作详解
整个文件操作过程中,我们应始终保持代码的健壮性和清晰性,确保在出现错误时资源能够被正确释放。
67 1