标准库OS 和 文件

本文介绍了Python标准库OS的常用命令,如修改路径、重命名文件和删除文件。接着详细讨论了文件的概念,包括文本文件和二进制文件的差异。重点讲解了如何使用Python的open()函数进行文件的打开和关闭,详细阐述了不同打开模式,并提醒了文件关闭的重要性以避免数据丢失。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、标准库OS常用命令

准备工作:自建一个文件夹,并将当前目录修改为该文件夹

import os 
os.getcwd() #查看当前路径
#####            输出            #####
'D:\\Python'

通过chdir()修改路径:

os.chdir(r"D:\Python\os learn")  ###修改当前路径
os.getcwd() #查看路径
#####          输出            #####
'D:\\Python\\os learn'

os.mkdir("sub_file")  #在当前文件路径下建立子文件夹,已存在时会报错
os.mkdir("sub1_file")

在这里插入图片描述

os.rmdir("sub_file") #删出文件夹,不存在时会报错
os.listdir()  #####列出当前目录或指导目录下所有文件夹及文件的名称,返回一个列表
#####                   输出                 #####
['open_1.txt', 'open_2.txt', 'open_3.txt', 'sub1_file']

在这里插入图片描述

os.rename("open_1.txt","open_11.py")  ####修改文件或文件夹的名称

在这里插入图片描述
给当前路径下所有文件改名:

for i in os.listdir():  #文件改名
    os.rename(i,"great_"+i)

删除一个文件:

    os.remove("open_2.txt")  ####删除一个文件,文件不存在时报错

2、文件

2.1文件概述

  • 文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容。概念上,文件时数据的集合和抽象,类似地,函数时程序的集合和抽象。用文件形式组织和表达数据更有效,也更为灵活。文件包括两种类型:文本文件和二进制文件。
    • 二进制文件直接由比特0和比特1组成,没有统一字符编码,文件内部数据的组织格式与文件用途有关。二进制文件和文本文件最主要的区别在于是否由统一的字符编码。
    • 无论文件创建为文本文件或二进制文件,都可以用“文本文件方式”和“二进制文件方式”打开,打开后的操作不同。

2.2文件的打开和关闭

➢在Windows系统中,文件被具象为一个个图标,若想改变文件中的内容,需要先双击打开文件;若文件使用完毕,需关闭文件。在程序中操作文件的步骤与通过图形界面操作文件的步骤类似,同样离不开文件的打开和关闭。

➢Python中可通过内置方法open()打开文件,open()方法的声明如下:
open(file,mode = “r”,buffering = -1)

该方法中的参数file一般为文件的路径名:参数mode用于设置文件的打开模式,默认值为"r",表示以只读模式打开文件;参数buffering用于设置访问文件时采用的缓冲方法,默认值为-1,表示采用系统默认的缓冲机制,若使用open()方法成功打开文件,则返回一个文件流,否则设置errno.

2.2.1 open()函数提供的打开模式
7种基本的打开模式
打开模式描述
r只读模式,如果文件不存在,返回异常
w覆盖写模式,文件不存在则创建,存在则完全覆盖源文件
x创建写模式,文件不存在则创建,存在则返回一场异常FileExistsError
a追加写模式,文件不存在则创建,若文件已存在,则文件指针会放在文件的末尾,在原文件最后写入内容
b二进制文件模式
t文本文件模式,默认值
+与r/w/x/a一同使用,在原功能基础上增加同时读写功能
加入调控因子的打开模式
打开模式描述
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头,这是默认模式
wb以二进制格式打开一个文件只用于写入。文件不存在则创建,存在则完全覆盖源文件
ab以二进制格式打开一个文件用于追加。文件不存在则创建,若文件已存在,则文件指针会放在文件的末尾,在原文件最后写入内容
r+打开一个文件用于读写。文件指针将会放在文件的开头
w+打开一个文件用于读写。文件不存在则创建,存在则完全覆盖源文件
a+打开一个文件用于读写。文件不存在则创建,若文件已存在,则文件指针会放在文件的末尾,在原文件最后写入内容
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头
wb+以二进制格式打开一个文件用于读写。文件不存在则创建,存在则完全覆盖源文件
ab+以二进制格式打开一个文件用于追加。如果文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写
2.2.2 文件关闭

f.close()
计算机中可打开的文件数量是有限的,每打开一个文件,就会占用一个“名额”,当“名额”耗尽后,系统将无法再打开新的文件,此外,当文件以缓冲方式打开时,磁盘文件与内存间的读写并不是即时的,若程序因异常关闭,可能导致缓冲区中的数据无法写入文件,从而造成数据丢失。

f = open("one_1.txt","w")
f.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值