python 文件操作大总结 对文件的增删改查,备份, 批量修改,创建和删除 文件的备份

Python os模块详解:文件操作、路径处理与系统交互实战指南 在Python编程中,系统交互是连接程序逻辑与底层操作系统的关键技术。通过封装操作系统API,Python提供了跨平台的统一接口,使开发者能够执行文件管理、路径操作等核心功能,极大提升了代码的可移植性和开发效率。这一技术价值在于,它让Python程序能够突破内存沙箱的限制,直接与文件系统、进程和环境变量进行交互,从而支撑起自动化脚本、Web后端资源管理、数据分析文件遍历等广泛的应用场景。本文聚焦于Python os模块,深入解析其文件操作、路径处理等核心功能,并通过实战案例展示如何高效进行系统交互。 阅读详情

python 的文件操作

文件的作用

  1. 永久的保存数据
  2. 文件中的内存保存在硬盘中
  3. 硬盘中的数据都是 0 和 1, 软件将 0 和 1的组合转换成我们认识的汉字

绝对路径和相对路径

  • 绝对路径:是从目录开始的路径
  • 相对路径: 以代码文件为参考的位置<.当前位置…上一级目录>
  • 每个路径之间可以使用 / 隔开
  • windows 下的注意点: \ 反斜杠是转义字符
  • f = open(‘C:\Users\nl\Desktop\code\day07\b.txt’, ‘w’, encoding=‘utf-8’)
  • 在字符串之前写上 r,字符串不再进行转义
    f = open(r’C:\Users\nl\Desktop\code\day07\b.txt’, ‘w’, encoding=‘utf-8’)

打开文件

打开文件 open(file, mode=“r”, encoding)

  1. file 为文件名,要打开的文件,类型的str.
  2. 打开的方式, mode=“r” 是缺省参数, r read 只读, w write 只写, a append 追加
  3. encoding 打开文件的编码(怎么将汉字变为二进制(0,1)),常见的编码有 utf-8(一个汉字三个字节)
  4. gbk(一个汉字两个字节), open( 函数), 在windows下默认是gbk方式打开, 在Linux 和 mac 下,默认是 utf-8 打开
  5. pycharm 的默认打开方式为 utf-8
  6. 返回值, 返回一个文件对象, 要通过文件对象操作文件
打开方式文件是否存在
w 只写,文件指针在文件的开头文件存在, 覆盖原文件.文件不存在, 创建文件
a 追加, 文件指针在文件的末尾文件存在, 文件末尾追加内容,文件不存在,创建文件,写入内容使用文件对象.write()
r 只读文件存在, 打开文件,文件指针的文件开头.文件不存在,程序报错. read() 会移动文件指针

文件的读写

  1. 写文件 文件对象.write(字符串)
  2. 参数就是写入的内容
  3. 返回值, 写入的长度
  4. 文件对象.close 关闭文件. 关闭文件之后,文件对象不能使用, 不能再对文件进行操作,关闭的同时会自动保存文件
f = open('a.txt', 'w', encoding='utf-8')
num = f.write("hello")
print(num)

#  控制台输出
5
  1. 读文件使用read()函数
  2. 文件对象.read(num) num代表读取多少字节, num可以不写,代表读取全部
  3. 返回值是读取的内容,str
  4. \n 也占一个字符
"""
b.txt 中的内容为:
aaa12
454
65
56
2
23
"""
f =open("b.txt", "r", encoding="utf-8")
buf = f.read(4)
print(buf)
print("*************")
buf1 = f.read()
print(buf1)
f.close()

# 控制台输出
aaa1
***************
2
454
65
56
2
23

文件的追加操作

  1. a 方式打开文件,向文件中写入内容,使用的是write()函数
  2. “a” 方式打开文件,文件指针在文件的末尾
"""
b.txt中的内容为:
aaa12
454
65
56
2
23
"""
f =open("b.txt", "a", encoding="utf-8")
f.write("hello\nworld")
f.write("")
f.close

# 控制台输出
aaa12
454
65
56
2
23hello
world

文件的其他读取操作

  1. 文件对象.readline()
  2. 按行读取,一次读取一行
  3. 文件对象.readlines()
  4. 按行读取,一次读取所有行, 列表中的每一个元素都是一行的内容
"""
b.txt 中的内容
aaa12
454
65
56
2
23hello
world
"""
f = open("b.txt", "r", encoding="utf-8")
buf = f.readline()
print(buf)
buf = f.readline()
print(buf)
print('*************')

my_list = f.readlines()
print(my_list)
f.close

# 控制台输出
aaa12

454

********
['65\n', '56\n', '2\n', '23hello\n', 'world']

模拟读取大文件


f = open("b.txt", "r", encoding="utf-8")
while True:
	buf = f.readline()
	if buf:
		print(buf, end="")
	else:
		break
f.close()

# 控制态输出
aaa12
454
65
56
2
23hello
world

文件的备份案例

思路:

1.输入要备份的文件
2. 对文件进行切片操作
3. 只读打开文件
4. 写 打开备份文件
5. 读取文件的内容
6. 将读取的内容写入到备份文件
7. 关闭文件和备份文件

# 1. 输入要备份的文件
file_name = input("请输入你想备份的文件")
# 2. 对文件进行切片操作
num = file_name.rindex(".")
#                 文件名字         [备份]        文件后缀
new_file_name = file_name[:num] + "[备份]" +  file_name[num:]
# 3. 只读打开文件
f = open(file_name, "r", encoding="utf-8")
# 4. 写打开备份文件
new_f = open(new_file_name, "w", encoding="utf-8")
# 5. 读取文件的内容
buf = f.read()
# 6. 将读取的文件写入到备份文件
new_f.write(buf)
# 7. 关闭文件
f.close()
new_f.close()

文件备份案例升级版-----支持二进制文件

# 1. input 输入要备份的文件 xxx.后缀
file_name = input("请输入要备份的文件:")

# 2.  xxx.后缀  —> xxx[备份].后缀
# 2.1 对 xxx.后缀 进行切片操作
num = file_name.rindex('.')
# new_file_name = 'a[备份].txt'
#               文件名字                        后缀
new_file_name = file_name[:num] + "[备份]" + file_name[num:]

# 1. 读打开 a.txt, 二进制方式打开文件,不能指定 encoding参数
f = open(file_name, 'rb')
# 2. 写打开 a[备份].txt
new_f = open(new_file_name, 'wb')
# 3. 读取 a.txt 文件中的内容
buf = f.read()  # bytes
# 4. 将读取到内容写入到 a [备份].txt
new_f.write(buf)   # bytes
# 5. 关闭 a.txt
f.close()
# 6. 关闭 a [备份].txt
new_f.close()

with打开文件

with可以自动的关闭文件, 不需要手动关闭, 上下文管理器

# as 起别名
# with 可以自动的关闭文件, 不需要手动关闭, 上下文管理器
with open('a.txt', 'r', encoding="utf-8") as f:
    buf = f.read()
    print(buf)

# 控制台输出
aaa
vvv
bbb
xxx
xxxxxxxxx

文件和目录的常见目录

  1. 导入os包
  2. 文件重命名 ----> os.rename(原文件名, 新文件名)
  3. 删除文件, 只能删除文件, 不能删除目录 ----> os.remove()
  4. 创建文件夹(目录) ----> os.mkdir()
  5. 获取当前程序路径path = os.getcwd() print(path)
  6. 改变默认目录 change dir ----> os.chdir(“b”) #进入 b 这个文件夹
  7. 获取目录列表(目录中的文件), 返回的是列表file_list = os.listdir print(file_list)
  8. 删除目录, 删除空目录 ----> os.rmdir()
  9. 判断文件是否存在, 返回的是 bool 类型 result = os.path.exists("a.txt") print(result)

批量创建文件

import os


def create_files():
	"""批量创建文件"""
	for i in range(10):
		file_name = f"b/file{i}.txt"
		f = open(file_name, "w")
		f.close()


create_files()

批量修改文件名

import os


def change_file():
	"""
	批量修改文件名, 添加前缀
    :param path: 目录,修改哪个目录
    :return:
	"""
	# 获取目录中有哪些文件
	file_list = o.listdir(path)
	# 遍历
	for file in file_list:
		new_file = 'python333-' + file
		os.rename(path + '/'+file, path + '/' + new_file)


change_files('b')


def change_file_2(path):
	"""
	批量修改文件名, 删除前缀
    :param path: 目录,修改哪个目录
	"""
	# 先获取当钱工作目录
	old_path = os.getcwd()
	# 切换到 path 目录
	os.chdir(path)
	file_list = os.listdir()
	print(file_list)
	# 修改
	for file in file_list:
		num = len('python333-')
		new_file = file[num:]
		os.rename(file, new_file)

	# 恢复到之前的目录
	os.chdir(old_path)


change_file_2()

批量删除文件

import os


def delete_files():
	#想删除文件的名字
	for i in range(10):
		file = "file-%d" %i
		os.remove(file)


delect_files()

在这里插入图片描述
在这里插入图片描述

基于文件的增删改查 PYthon3实现文件的CRUD操作。。。。。。。。。。。。。。。。。。。。。 立即下载

相关推荐

内存管理(二)——内存分段

内存分段

weixin_43844995的博客 2693

Python 文件备份、重命名/删除指定字符串

Python 文件备份

qq_44948213的博客 587

IBIS模型中的Pullup和Pulldown曲线详解:如何避免信号完整性设计中的常见错误

本文深入解析IBIS模型中Pullup和Pulldown曲线的关键作用,揭示其在信号完整性设计中的黄金法则。通过详细分析曲线特性、常见误区及验证方法,帮助工程师避免设计错误,优化高速PCB设计。文章还展示了曲线数据在动态终端匹配、串扰预测和电源完整性分析中的高级应用,提升设计效率和可靠性。

weixin_30275415的博客 450

python ftp 文件修改时间 乐贴_Python 提取文件,备份,压缩,并上传到远程FTP后,清空指定时间范围外的文件 | 学步园...

backup-files.py#! /usr/bin/env python# -*- coding: utf-8 -*-# author:jinqinghua@gmail.com# version:build 2014-02-22import osimport platformimport timeimport tarfileimport zipfilefrom ftplib import FTP...

weixin_39717152的博客 227

一文详解脉搏血氧测量原理与方法

本文摘要:血氧饱和度(SpO2)是评估人体氧合功能的重要指标,反映血红蛋白携氧能力。其测量基于光电容积描记法(PPG),利用红光(660nm)和红外光(940nm)通过组织时的吸收差异计算。脉搏波特征与心血管状态相关,动脉硬化会影响波形特征。Masimo公司的信号提取技术(SET)通过并行算法有效解决了传统血氧仪在运动、弱灌注情况下的测量误差问题,显著提升了临床监测的准确性和可靠性。该技术已成为血氧监测的金标准,在降低误报率、缩短响应时间方面具有显著优势。

m0_50146396的博客 2012

无GPS室内飞行:基于PX4与MID360的FAST-LIO定点悬停实战解析

本文详细解析了基于PX4飞控与大疆MID360激光雷达的无GPS室内飞行技术,重点介绍了FAST-LIO算法在定点悬停中的应用。通过硬件配置、软件环境搭建、坐标系转换等实战经验,帮助开发者解决室内定位难题,实现精准悬停与稳定飞行。

weixin_29056781的博客 262

python 删除文件夹和文件【转】

python 删除文件夹和文件

a1579990149wqh的博客 6万+

突破边缘AI算力瓶颈:YOLOv12模型剪枝与知识蒸馏联合优化全攻略

这套剪枝-蒸馏联合方案的优势在于其系统性和可靠性。它不是单一的技巧,而是一套完整的工程流程,确保了从研发到部署的无缝衔接。

m0_71589036的博客 219

使用python备份指定目录并删除备份超过一定时长的文件

1 #!/usr/bin/env python 2 #-*- coding: utf-8 -*- 3 """ 4 @Project:Py 5 @author: 6 @Email: 7 @Software: PyCharm 8 @file: test_rm.py 9 @time: 2018/1/17 0017 下午 14:14 10 """ 11 ...

weixin_30538029的博客 187

如何做好软件需求分析?

软件需求分析也称为系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。软件开发一般包括:可行性分析、需求分析、软件设计、软件开发、软件测试、软件实施、软件服务等步骤,需求分时软件开发的第一步骤。用户需求分析是指在系统设计之前和设计、开发过程中对用户需求所作的调查与分析,是系统设计、系统完善和系统维护的依据。

qq_41854911的博客 1415

土壤数据库辅助工具SPAW计算土壤导水率

首先点击打开根据之前的1比100土壤数据查表得到各个组分含量其中Field Capacity是田间持水量Matric Bulk Density是基质粒密度。

所有专家都曾始于新手 3443

用Python实现文件的备份和替换删除指定内容

用Python实现文件的备份和替换删除指定内容

k_e_e_p的博客 1335

Python爬虫实战:爬取小红书数据做爆款分析,我破解了签名加密+移动端反爬(附完整代码)

爬取小红书数据的核心,不是“简单的HTTP请求”,而是“理解移动端接口的加密逻辑和反爬规则”——从x-s/x-t签名破解到移动端UA伪装,再到行为模拟,每一步都是对移动端爬虫的深度理解。这套方案的价值在于,不仅能稳定抓取小红书数据,还能从数据中拆解出有价值的爆款特征,真正把“数据”变成“洞察”。对程序员来说,小红书爬虫不仅是技术练手,更是了解新媒体平台数据逻辑的窗口。希望这篇分享能帮到做新媒体分析或爬虫进阶的小伙伴,也欢迎在评论区交流小红书反爬和爆款分析的更多技巧!

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2057

Python(20)Python文件与目录操作全攻略:增删改查及递归实战详解

文件操作‌是Python开发中的基础能力,据2023年PyPI统计,超过92%的Python项目涉及文件系统交互。本文将通过20+实战案例,详解以下核心场景需求: ‌自动化运维‌:批量处理日志文件 ‌数据清洗‌:结构化文件存储 ‌应用配置‌:动态读取配置文件 ‌资源管理‌:监控目录空间变化

优快云博客专家,领域包括但不限于:AI、大数据、Python、架构师,有合作、课程、问题、疑惑请私信博主 1527

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

SQL语言的文件操作

首先,我们需要对SQL语言有一个基本的理解。SQL是一种领域特定语言,主要用于管理关系型数据库管理系统(RDBMS)中的数据。自1970年代以来,SQL已经成为了标准化的数据库查询语言,绝大多数的数据库系统,如MySQL、PostgreSQL、Oracle、SQL Server等,都支持SQL。数据查询语言(DQL):主要用于查询数据,如SELECT语句。数据操作语言(DML):用于对数据进行操作,如INSERTUPDATE和DELETE语句。数据定义语言(DDL):用于定义数据库结构,如。

2501_90485616的博客 546

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

第17课:Python|文件进阶【二进制文件、路径处理与批量文件操作实战】

文件与目录操作摘要 核心知识点 二进制文件处理: 使用'rb'/'wb'模式读写图片、音视频等非文本文件 大文件推荐分块处理(如1MB块)避免内存耗尽 路径操作: os.path模块提供传统路径处理方法(join/basename/exists等) pathlib(Python 3.4+)提供面向对象的现代路径操作(推荐新项目使用) 文件系统操作: 目录创建:mkdir(单级)和makedirs(多级递归) 删除操作:remove(文件)、rmdir(空目录)、rmtree(非空目录) 移动/重命名:

Java 后端|Python|AI 实战博主。专注微服务、分布式、大模型应用开发,输出可落地项目、源码剖析与面试总结。用通俗文字拆解技术难点,记录开发路上的学习与踩坑,期待和大家一起交流成长。 499

Python JSON文件操作全解析:从基础读写到高级增删改查

JSON作为一种轻量级的数据交换格式,在现代软件开发中扮演着关键角色,尤其在API通信、配置管理和数据存储等场景。其核心原理基于键值对和嵌套结构,通过序列化与反序列化实现数据在不同系统间的无缝转换。Python标准库中的json模块提供了完整的技术解决方案,能够高效处理数据持久化和结构化操作。在工程实践中,开发者常需对本地JSON文件进行增删改查,这涉及文件I/O操作、编码处理和数据一致性等关键技术点。通过封装可复用的操作类,可以构建健壮的JSON文件处理器,有效应对嵌套数据访问、并发写入和性能优化等实际挑

weixin_30352191的博客 730

Python学习之旅--文件

1, 文件读写 目的: 可以通过文件操作进行文件的读取,写入过程 操作流程 #1, 写入文件, "w"进行文件操作, 不管之前有没有文件都会覆盖 # file = open("test.txt","w") # file.write("hello world, hello dream") # file.close() #2, 读取文件 # file = open("test.txt","r") # content = file.read() # content = file.read(5) # co

qq_45661125的博客 338

Python修炼1.学生信息管理系统(文件保存,修改后有备份恢复)

#功能主要包括对学生信息的增删改查,以及备份恢复#编写一个学生类,可对其进行“增,删,改,查”,学生类属性包括stuID,name,sex, classID# student.pyclass Stu: stuID = "" name = '' sex = 'M' classID = 'NULL' #属性设置get,set方法 def get_stuID...

Lijing581520的博客 1065

Python基础知识——文件部分

文件: 文件操作介绍: 1.文件的作用: 一个程序在运行过程中用了九牛二虎之力终于计算出了结果,试想一下如果不把这些数据存放起来,相比重启电脑之后,“哭都没地方哭了”。 默认数据是加载到内存中,结果也是保存到内存中, 程序执行结束,所有的数据释放。 2.文件的打开与关闭: 宋丹丹拉高音调说:这个得分成三步,第一步打开冰箱;第二步,把大象塞进冰箱里;第三步,把冰箱关上。在操作文件的整体过程与将大象...

weixin_43187669的博客 943

python将学生信息保存到文件中_Python修炼1.学生信息管理系统(文件保存,修改后有备份恢复)...

#功能主要包括对学生信息的增删改查,以及备份恢复#编写一个学生类,可对其进行“增,删,改,查”,学生类属性包括stuID,name,sex, classID# student.pyclass Stu:stuID = ""name = ''sex = 'M'classID = 'NULL'#属性设置get,set方法def get_stuID(self):return self.stuIDdef s...

weixin_39609752的博客 795

pyiCloud文件操作完全手册:从云存储下载到上传管理

想要通过Python轻松管理iCloud云存储中的文件吗?pyiCloud正是你需要的终极解决方案!这款强大的Python库让你能够以编程方式访问iCloud Drive,实现文件下载、上传、删除和文件夹管理等完整功能。无论你是开发者想要自动化文件备份,还是普通用户需要批量处理云端文档,pyiCloud都能提供简单高效的API接口。 ## 📁 pyiCloud文件管理核心功能 pyiClou

gitblog_01145的博客 335

Python基础-----实现文件的增删改查

实现文件的增删改查 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 import os 4 def file_handler(backend_data,res = None,type = 'fetch'): #文件处理函数 5 if type == 'fetch': #查询操作 6 w...

weixin_30437481的博客 237

Python基础 - 通讯录程序 增删改查功能实现

文章摘要 本文介绍了使用Python实现通讯录程序的增删改查(CRUD)功能。首先分析了为何选择字典列表作为数据结构,对比了不同存储方式的优缺点。随后详细讲解了各功能模块的实现: 添加功能:包含输入验证、重复检查 删除功能:实现大小写不敏感的姓名匹配和安全删除 修改功能:支持选择性更新字段 查询功能:提供模糊搜索和精确查找 每个功能都配有完整代码、关键解析和流程图,并强调输入验证和错误处理的重要性。项目采用纯Python实现,无需外部依赖,适合初学者学习基础语法和数据结构操作。通过这个实用案例,读者可以掌握

千淘万漉虽辛苦,吹尽狂沙始到金 1万+

linux将用户删除文件,linux 用户配制文件 用户增加及删除 以及用户属于的更改...

1、用户密码文件/etc/passwdroot : x : 0 : 0 : root : /root : /bin/bash (以冒号来区分,一共有七个段)用户名 密码 user ID group ID 说明信息 家目录 ...

weixin_42480812的博客 488

Python--综合练习--对文件进行增删改查

知识点应用:strip()  tag       函数封装      文件操作      for循环      os模块      代码解耦 实例 tag = True while tag: print('level') choice = input('level1>>:').strip() while tag: ...

weixin_30838921的博客 191
上一篇: python 学生管理系统 文件版
下一篇: linux 基本操作 创建 删除文件 目录 复制 移动 重命名
LanLanDeMing
博客等级 码龄7年 60粉丝 66原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值