python基础--目录的操作

>>> import os  #引入目录操作的包os

>>> os.getcwd()  #获取当前的工作目录  c:current   w:wording   d:directory

‘C:\\Users\\dell‘

>>>

>>> os.chdir("d:\\pic")   #chdir切换目录

>>> os.getcwd()

‘d:\\pic‘

>>> os.listdir()  #查看当前目录下有什么文件(只显示第一层),括号里可以指定参数路径

[‘1.jpg‘, ‘baidu.html‘]

>>> import os.path

>>> os.path.isdir("d:\\pic")   #isdir判断是否是目录

True

>>> os.path.isdir("d:\\pic\\1.jpg")

False

>>> os.path.isdir("d:\\a.txt")

False

>>> os.path.isfile("d:\\a.txt")   #isfile判断是否是文件

True

>>>

小练习:统计一个目录下(一层目录),统计一下有多个文件

统计一下有多少个目录

算法:

1 定义文件计数的变量

2 定义文件夹计数的变量,并赋值0

3 使用os.listdir()获取所有的文件和目录名称,这个返回值是列表

4 使用for 进行遍历,使用os.path.isdir和isfile来分别判断是文件还是目录

如果是文件,则在文件计数的变量上+1,否则在目录计数的变量上加一

5 输出统计结果:文件计数和目录计数的变量值

import os

import os.path

file_count = 0

dir_count =0

for i in os.listdir("d:\\pic"):

print("取出的内容:",i)

if os.path.isfile("d:\\pic\\"+i):

file_count+=1

else:

dir_count+=1

print("文件个数:%s" %file_count)

print("目录个数:%s" %dir_count)

>>> os.getcwd()

‘d:\\pic‘

>>> os.remove("d:\\pic\\1.jpg")    #删除文件,只能一次删除一个文件

>>> os.listdir()

[‘baidu.html‘]

>>>

>>> os.mkdir("d:\\pic\\testman")   #创建目录

>>> os.mkdir("d:\\pic\\testman\\testman1")

>>> os.mkdir("d:\\pic\\testman\\testman1\\testman3")

>>> os.mkdir("d:\\pic\\testman\\testman1\\testman4")

>>>

#删除目录

>>> os.mkdir("d:\\pic\\testman")

>>> os.mkdir("d:\\pic\\testman\\testman1")

>>> os.mkdir("d:\\pic\\testman\\testman1\\testman3")

>>> os.mkdir("d:\\pic\\testman\\testman1\\testman4")

>>> os.removedirs("d:\\pic\\testman\\testman1\\testman3")

>>> os.removedirs("d:\\pic\\testman\\testman1\\testman4")   #删testman4的时候把它的上级testman1和上上级testman中,只要是非空的目录一并删了,递归删除空目录

从路径的下面开始删除空目录,如果遇到了某个

目录非空(包含子目录或者文件)就停止删除目录了

>>> os.getcwd()

‘d:\\pic‘

>>> os.path.isabs("a.txt")  #判断是否是绝对路径

False

>>> os.path.isabs("d:\\a.txt")

True

>>>

>>> if not os.path.exists("e:\\pic1\\2.txt"):

...     with open("e:\\pic1\\2.txt","w") as fp:

...         fp.write("")

创建一个10级目录,每个目录的名字从gloryroad1-10,每个目录创建一个文件,文件的名字是1-10.txt,文件内容写上文件名

算法:

1 写一个for 循环,循环10次

2 在循环体下,创建一个目录为gloroadi(i是循环的变量值),os.chdir进入到新创建的目录,然后用with方法创建文件,

文件名使用i变量+".txt"的方式来拼接文件名,然后使用w模式,给文件写内容,写的文件内容就是拼接的文件名

import os

dir_name = "glroyroad"

os.chdir("d:\\pic")

for i in range(1,11):

os.mkdir(dir_name+str(i))

os.chdir(dir_name+str(i))

with open(str(i)+".txt","w") as fp:

fp.write(str(i)+".txt")

>>> os.listdir()

[‘baidu.html‘]

>>> os.listdir("d:\\")

[‘$RECYCLE.BIN‘, ‘2018冬季班光荣之路学习‘, ‘360downloads‘, ‘360WiFi‘, ‘360极速浏览器下载‘, ‘360驱动大师目录‘, ‘a.py‘, ‘a.txt‘, ‘aa.py‘, ‘apache-maven-3.6.1‘, ‘apache-tomcat-8.5.40‘, ‘apache-tomcat-8.5.43‘, ‘AutoTestLog.log‘, ‘b.txt‘, ‘BaiduNetdiskDownload‘, ‘CloudMusic‘, ‘dataDriveRreport.log‘, ‘fdf98c88a68350d8deab4a0ae668ba20‘, ‘iDownload‘, ‘library_data.txt‘, ‘LR‘, ‘mgtv‘, ‘mgtv.cache‘, ‘packagea‘, ‘php‘, ‘pic‘, ‘python‘, ‘qq.jtl‘, ‘road‘, ‘sample.xlsx‘, ‘sohu.jtl‘, ‘System Volume Information‘, ‘VM box‘, ‘wamp‘, ‘Youku Files‘, ‘__pycache__‘, ‘常用文档‘, ‘软件‘, ‘迅雷下载‘]

>>> os.path.dirname("d:\\pic")   #获取路径名

‘d:\\‘

>>> os.path.dirname("d:\\pic\\baidu.html")

‘d:\\pic‘

>>> os.path.basename("d:\\pic\\baidu.html")   #获取文件名

‘baidu.html‘

>>>

>>> os.path.splitext("d:\\pic\\baidu.html")   #切割文件名后缀和路径

(‘d:\\pic\\baidu‘, ‘.html‘)

>>> os.path.splitext("d:\\pic\\baidu.html")[0]

‘d:\\pic\\baidu‘

>>> os.path.splitext("d:\\pic\\baidu.html")[1]

‘.html‘

>>>

>>> os.listdir()

[‘baidu.html‘]

>>> os.rename("baidu.html","bd.html")  #改名

>>> os.listdir()

[‘bd.html‘]

>>> os.path.getsize("d:\\pic\\bd.html")   #获取文件大小(字节数)

15625

>>> os.getcwd()

‘d:\\pic‘

>>> os.rmdir("test")

>>> os.mkdir("d:\\pic\\test")

>>> os.listdir()

[‘bd.html‘, ‘test‘]

>>> os.rmdir("test")  #删除目录

>>> os.listdir()

[‘bd.html‘]

>>>

原文地址:https://www.cnblogs.com/wenm1128/p/11622633.html

时间: 2025-01-13 15:27:02

python基础--目录的操作的相关文章

Python 基础目录

1.Python基础之数据基本类型

Python基础 —— 目录

Python基础 Python基础 -- 基本数据类型 Python基础 -- 基本数据类型的方法总结 Python基础 -- 比较运算符 + 逻辑运算符 Python基础 -- 异常处理 Python基础 -- 常用模块 Python基础 -- 模块和包 Python基础 -- PIL模块 Python基础 -- 装饰器函数 Python基础 -- 内置函数 Python基础 -- range()/xrange() 面向对象 -- 特殊且重要的双下方法 面向对象 -- 类的成员.成员修饰符.特

【python基础】文件操作

首先要明确的就是python对文件的操作实质上是需要调配两种资源: 1.宿主机的系统资源,比如Linux下的limit文件句柄数 2.python内存资源 两种使用方法: 方式一: f=open('aaa.txt','rt',encoding='utf8') f.read() f.close ##释放系统资源,向系统发送指令告知,程序结束,请求系统关闭文件 方式二: with open('aaa.txt','rt',encoding='utf8') as f: f.read() ps:方式二借助

python之目录文件操作

[1.os] 1.重命名:os.rename(old, new) 2.删除:os.remove(file) 3.列出目录下的文件 :os.listdir(path) 4.获取当前工作目录:os.getcwd() 5.改变工作目录:os.chdir(newdir) 6.创建多级目录:os.makedirs(r"c:/python /test") 7.创建单个目录:os.mkdir("test") 8.删除多个目录:os.removedirs(r"c:/pyt

Python基础--通用序列操作

Python 继续 Python包含6种内建的序列,各自是:列表.元组.字符串.Unicode字符串.buffer对象和xrange对象.我们将逐步进行介绍. 今天主要介绍一下通用序列操作.放之四海而皆准. 1 索引 全部程序猿都知道,索引下标从零開始.Python也是这样, 索引0指向序列中第一个元素. 可是与C++相比.Python又添加了负索引.最后1个元素的索引是-1,从右至左是-2.-3 - 字符串字面值直接能够索引: >>>'Hello'[1] e 2 分片 分片通过冒号隔开

python基础之文件操作

文件操作有很多种 我们在这里可以大体分一下,文件的操作其实可以分为对文件整体的操作(创建文件,删除文件,重命名文件,获取文件属性)以及对文件内容的操作(修改文件内容) 先来看对文件整体的操作: 我们按照增删查改的顺序进行讲述 1  增 所谓增,即新建. 新建一个文件 f=open('lalal','w+') #如果该文件(lalal)不存在则创建,若存在则打开. 新建一个目录: >>> os.listdir() ['log', 'test1'] >>> os.mkdir

[Python基础]006.IO操作

IO操作 输入输出 print raw_input input 文件 打开文件 关闭文件 读文件 写文件 文件指针 实例 输入输出 输入输出方法都是Python的内建函数,并且不需要导入任何的包就可以使用. print 简单控制台输出方法 print ... print 'content' raw_input 简单的控制台输入方法 raw_input(显示的内容....) num = raw_input('Please input a number:') // 输入一个数字 print num

Python基础3 文件操作、字符编码与转码

文件操作 对文件操作过程 打开文件,得到文件句柄赋值给变量 操作 关闭文件 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读:   不存在则创建:存在则只追加内容:] "+" 表示可以同时读写某个文件 r+,可读写文件.[可读:可写:可追加] w+,写读 a+,同a "U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用) rU r+U "b

python基础11 文件操作 ,字符编码

主要内容 文件操作 文件操作 打开文件的模式 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读:不存在则创建:存在则只追加内容:] "+" 表示可以同时读写某个文件 r+,可读写文件.[可读:可写:可追加] w+,写读 a+,同a r+:可读可写,若文件不存在,报错:w+: 可读可写,若文件不存在,创建. "U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模