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

目录
相关文章
|
安全 Python
Python语言中常用的文件操作方法探讨
通过上述方法的结合使用,我们可以构筑出强大并且可靠的文件操作逻辑,切实解决日常编程中遇到的文件处理问题。
507 72
|
监控 Java 数据处理
文件操作不再难!Python系统编程实战,带你轻松驾驭文件系统与I/O
【7月更文挑战第31天】在 Python 系统编程中, 文件操作与 I/O 管理至关重要。
313 2
|
移动开发 安全 Linux
Python文件操作的"保险箱":with语句深度实战指南
本文深入解析Python中`with`语句的原理与高级应用,通过“保险箱”类比,形象展示资源管理机制。从上下文管理协议到实战场景,涵盖文件、数据库、网络等多种资源的高效安全处理方式,助你写出更优雅、可靠的代码。
351 1
|
存储 Python
Python文件操作(1)
【10月更文挑战第17天】
438 60
Python文件操作(1)
|
缓存 数据库连接 数据库
Python文件操作的“保险箱”:with语句深度实战指南
本文深入探讨Python中with语句在文件操作中的应用及其优势。首先介绍其底层原理,基于上下文管理协议自动管理资源的获取与释放,避免手动关闭文件导致的资源泄漏问题。接着通过基础文件读写、异常处理进阶和复合资源管理等实战场景解析with语句的便捷性与安全性。同时,阐述如何自定义上下文管理器以满足特定需求,并分析其性能考量及优化策略。最后总结实战经验,强调优先使用内置管理器、明确异常处理以及保持代码可读性的重要性,助力开发者高效编写健壮的程序。
413 1
|
自然语言处理 安全 JavaScript
Python文件操作的“保险箱”:with语句深度实战指南
Python中的`with`语句是文件操作和资源管理的强大工具,如同一个智能保险箱,自动处理打开和关闭操作,避免手动管理可能引发的错误。它通过上下文管理协议(`__enter__`和`__exit__`方法)确保资源在使用后正确释放。无论是逐块读取大文件、同时读写文件,还是处理特殊编码文件,`with`语句都能简化代码并提高安全性。此外,自定义上下文管理器可扩展到数据库连接等场景,而常见错误如重复关闭文件或忽略异常也需注意。结合生成器表达式批量处理文件时,`with`语句仍能保持高效和安全。总之,`with`语句是资源管理的瑞士军刀,让复杂操作变得简单可靠。
523 1
|
IDE 测试技术 开发工具
Python接口自动化测试框架(基础篇)-- 不只是txt的文件操作
本文介绍了Python中的文件操作方法,包括使用open()打开文件、close()关闭文件、read()读取内容、readline()读取单行、readlines()读取多行、write()写入内容以及writelines()写入多行的方法。同时,探讨了文件操作模式和编码问题,并扩展了上下文管理器with...as的使用,以及对图片和音频文件操作的思考和练习。
336 1
Python接口自动化测试框架(基础篇)-- 不只是txt的文件操作
|
存储 Python
Python文件操作
Python文件操作
|
存储 安全 Python
30天拿下Python之文件操作
30天拿下Python之文件操作
258 2
|
监控 安全 Java
文件操作不再难!Python系统编程实战,带你轻松驾驭文件系统与I/O
【9月更文挑战第13天】在Python系统编程中,文件操作与I/O管理至关重要。本文通过五个实战案例分享最佳实践:高效遍历文件系统、优雅处理文件读写、利用缓冲机制优化性能、并行处理文件加速任务以及异常处理确保程序稳健。使用pathlib、上下文管理器及concurrent.futures等工具,助你轻松掌握Python文件系统与I/O操作,提升编程效率和项目质量。 示例代码展示了如何使用pathlib遍历目录、with语句安全读写文件、控制缓冲区大小、并行处理多个文件以及捕获异常保证程序稳定运行。通过这些技巧,你将能够在实际项目中更加高效地管理和操作文件。
316 6

推荐镜像

更多