当前位置:首页 » 编程语言 » python目录下的所有文件

python目录下的所有文件

发布时间: 2023-03-11 22:28:31

python--目录操作

一、os.getcwd()

获取当前工作目录,即当前Python脚本工作的目录路径。

二、os. chdir(path)

改变当前脚本工作目录;相当于shell下的cd命令。

三、os.pardir

返回当前目录的父目录('..')

四、获取当前使用的操作系统类型(其中 ‘nt’ 是 windows,’posix’ 是linux 或者 unix)。

五、os.mkdir(path [, mode=0777])

生成单级目录;相当于linux中的mkdir dirname。参数mode表示生成的目录的权限,默认是超级权限,也就是0777。如果重复创建,会报错

六、os.makedirs(path [, mode=0777])

可生成多层递归目录,父目录如果不存在,递归生成。参数mode表示生成的目录的权限,默认是超级权限,也就是0777。

七、os.removedirs(path)

若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依次类推。

八、os.rmdir(path)

删除单级空目录,若目录不为空则无法删除,会报错;相当Linux中的rmdir dirname。

九、os.listdir(path)

列出指定目录下的所有文件和子目录,包括隐藏文件或目录,并以列表形式返回。

十、os.remove(filePath)

删除一个指定的文件,参数filePath表示文件所在的路径。

注意:该方法只能删除文件,不能删除目录。

十一、os.rename(oldname, newname)

重命名文件/目录。

十二、os.access(path, mode)

输出文件权限模式。

十三、os.chmod(path, mode)

修改文件的权限。

十四、os.walk(top, topdown=True, onerror=None, followlinks=False)

➢top:表示需要遍历的目录树的路径。

➢topdown的默认值是“True”,表示首先返回目录树下的文件,然后遍历目录树下的子目录。值设为False时,则表示先遍历目录树下的子目录,返回子目录下的文件,最后返回根目录下的文件。

➢onerror的默认值是“None”,表示忽略文件遍历时产生的错误。如果不为空,则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历。

➢该函数返回一个列表,列表中的每一个元素都是一个元组,该元组有3个元素,分别表示每次遍历的路径名,目录列表和文件列表。

➢默认情况下,os.walk 不会遍历软链接指向的子目录,若有需要请将followlinks设定为true

十五、os.path.split(path)

将path分割成目录和文件名(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在),并存于元组中返回。

十六、os.path.exists(path)

判断path是否存在,如果存在返回True,否则返回False。

十七、os.path.isfile(path)

判断path是否是文件,如果是返回True,否则返回False。

十八、os.path.isdir(path)

判断path是否是目录,如果是目录返回True,否则返回False。

十九、os.path.getsize(name)

获得文件大小,如果name是目录返回结果是0L或者4096L;如果name代表的目录或文件不存在,则会报WindowsError异常。

二十、os.path.join(a, *p)

连接两个或更多的路径名,中间以“\”分隔,如果所给的参数中都是绝对路径名,那先给的绝对路径将会被丢弃。

二十一、os.path.getatime(filename)

返回文件的最后访问时间,返回的是时间戳。

二十二、os.path.getctime(filename)

以时间戳的形式返回文件或目录的创建时间,在Unix系统上是文件最近更改的时间,在Windows上是文件或目录的创建时间。

1.基础题:

    检验给出的路径是否是一个文件:os.path.isfile("D:\\test.txt")

    检验给出的路径是否是一个目录:os.path.isdir("D:\\test.txt")

    判断是否是绝对路径:os.path.isabs("D:\\test.txt")

    检验给出的路径是否真地存在:

2.返回一个路径的目录名和文件名 :os.listdir("D:\\")

3.分离文件名与扩展名 :os.path.splitext("D:\\test.txt")

4.找出某个目录下所有的文件,并在每个文件中写入“gloryroad” :

>>> for files in os.walk("D:\\test"):

...    print(files)

...

('D:\\test', [], ['a.txt', 'b.txt', 'test.txt', 'test1.txt'])

>>> with open("D:\\test\\a.txt","w+") as f:

...    f.write("gloryroad")

5.如果某个目录下文件名包含txt后缀名,则把文件后面追加写一行“被我找到了!”

6. 命题练习:

    1) 一个目录下只有文件(自己构造),拷贝几个文件(手工完成)

    2 )用listdir函数获取所有文件,如果文件的创建时间是今天,那么就在文件里面写上文件的路径、文件名和文件扩展名

    3) 如果不是今天创建(获取文件的创建时间,并转化为时间格式,判断是否今天),请删除

    4 )计算一下这个程序的执行耗时

7.删除某个目录下的全部文件

8.统计某个目录下文件数和目录个数

9.使用程序建立一个多级的目录,在每个目录下,新建一个和目录名字一样的txt文件

10. 查找某个目录下是否存在某个文件名

11. 用系统命令拷贝文件

12.输入源文件所在路径和目标目录路径,然后实现文件拷贝功能

13.遍历某个目录下的所有图片,并在图片名称后面增加

14、遍历指定目录下的所有文件,找出其中占用空间最大的前3个文件

15、过滤py源码中的#注释,另存为文件result.py,并执行result.py,断言是否执行成功

16、文件访问,提示输入数字 N 和文件 F, 然后显示文件 F 的前 N 行.

17、从命令行接受1个路径如:c:\a\b\c\1.py, 实现1个函数创建目录a\b\c,创建文件1.py,实现1个函数删除已创建的目录及文件

18、有一个ip.txt,里面每行是一个ip,实现一个函数,ping 每个ip的结果,把结果记录存到ping.txt中,格式为ip:0或ip:1 ,0代表ping成功,1代表ping失败

19、实现DOS命令执行功能,接受输入命令并执行,然后把执行结果和返回码打印到屏幕

20、文件访问

    访问一存在多行的文件,实现每隔一秒逐行显示文本内容的程序,每次显示文本文件的 5行, 暂停并向用户提示“输入任意字符继续”,按回车键后继续执行,直到文件末尾。

    显示文件的格式为:[当前时间] 一行内容,比如:[2016-07-08 22:21:51] 999370this is test

Ⅱ Python中如何遍历指定目录下的所有文件

例如:在C:\TDDOWNLOAD目录下有a.txt、b.txt两个文件,另有\sub1子文件夹,C:\TDDOWNLOAD\sub1下又有c.txt、d.txt两个文件。
1.
os.walk
os.walk()返回一个三元素的tuple:当前路径、子文件夹名称、文件列表。>>>
import
os>>>
def
fun(
path
):...
for
root,
dirs,
files
in
os.walk(
path
):...
for
fn
in
files:...
print
root,
fn...
>>>
fun(
r'C:\TDDOWNLOAD'
)C:\TDDOWNLOAD
a.txtC:\TDDOWNLOAD
b.txtC:\TDDOWNLOAD\sub1
c.txtC:\TDDOWNLOAD\sub1
d.txt>>>
2.
glob.glob
glob.glob()只接受一个参数,这个参数既代有路径,又代有匹配模式,返回值为一个列表。注意,glob.glob()无法直接穿透子文件夹,需要自己处理:>>>
def
fun(
path
):...
for
fn
in
glob.glob(
path
+
os.sep
+
'*'
):
#
'*'代表匹配所有文件...
if
os.path.isdir(
fn
):
#
如果结果为文件夹...
fun(
fn
)
#
递归...
else:...
print
fn...
>>>
fun(
r'C:\TDDOWNLOAD'
)C:\TDDOWNLOAD\a.txtC:\TDDOWNLOAD\b.txtC:\TDDOWNLOAD\sub1\c.txtC:\TDDOWNLOAD\sub1\d.txt>>>
'*'为匹配模式,代表匹配所有文件,只有这样才能将子文件夹查出来,以便递归深入,探查下一层的文件。

Ⅲ 用python 列出指定目录下所有的txt文件,并输出每个文件的创建日期和大小

《》网络网盘免费在线下载链接:

提取码:9cjq

操作更方便哦

Ⅳ python怎么查文件夹下所有文件

import os
import os.path
rootdir = “d:\data” # 指明被遍历的文件夹
for parent,dirnames,filenames in os.walk(rootdir): #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
for dirname in dirnames: #输出文件夹信息
print "parent is:" + parent
print "dirname is:" + dirname
for filename in filenames: #输出文件信息
print "parent is:" + parent
print "filename is:" + filename
print "the full name of the file is:" + os.path.join(parent,filename) #输出文件路径信息

Ⅳ 用python把文件夹下的所有文件包括文件夹里面的文件都拷贝到同一个目录下

defchange(path,path1):
forfinos.listdir(path):
ifos.path.isfile(path+os.path.sep+f):
a,b=os.path.splitext(f)
ifb!='.py':
shutil.(path+os.sep+f,path1)
elifos.path.isdir(path+os.path.sep+f):
change(path+os.sep+f,path1)
if__name__=='__main__':
path='D:\workspace\python'
path1='D:\workspace\python\filepath'
change(path,path1)

你好,我把change稍微改了一下,看看行不

Ⅵ 如何获取目录下的文件数(一行Python)

如果想把该目录下所有的文件都统计出来,包括子目录、子目录的子目录。。。

可以使用os.walk来找出目录下所有的文件

importos
printsum([len(x)for_,_,xinos.walk(os.path.dirname("test"))])
#test是目录名


os.walk会递归遍历指定目录下的文件,返回值分别为当前文件夹完整路径,当前文件夹中的文件夹和文件夹中的文件。我们只需要文件,所以其他的都不取出来了,直接使用"_"占位就行了。


如果只是想统计出当前目录下的文件,不包括子目录的。就使用os.listdir,只统计是文件的个数:

len([xforxinos.listdir(os.path.dirname(__file__))ifos.path.isfile(x)])

Ⅶ python遍历目录就是这么简单

有时我们有列出目录下都有哪些文件和子目录的需求,这种情况是有现成命令可用的,比如windows下的dir命令,linux下的ls命令都可以,那我们用python代码怎么实现呢?

我们利用python丰富的库很容易就能实现一个简易版本,下面我们就用4种方法来实现它。

一、使用os.popen

os.popen工作原理是新建一个子进程,然后用这个子进程执行命令,父进程与子进程间通过管道进行通信。

根据调用popen时的传参,我们可以通过管道读取子进程的输出也可以向子进程写数据,默认是读取子进程的输出。

从以上描述可以看出popen是非常通用的,不是只能用于我们这个例子哦。

那我们开始用它实现我们的需求吧,代码如下:

哈哈,是不是很简单,这种方式虽然能达到目的但其实并不是我们想要的,我们本来就是要实现ls的,结果调用了ls,所以严格意义上来说我们并没有实现ls,那让我们继续往下看其它方法吧,嘿嘿。

二、使用glob.glob

glob可以根据你使用的通配符对文件进行匹配,利用这个特性我们可以列出当前目录下都有哪些文件和子目录,如下代码:

三、使用os.listdir

os.listdir同样可以列出某个目录下都有哪些文件和子目录,如下代码:

四、使用os.walk

os.walk在遍历目录方面非常强大,它不但可以遍历你需要的目录,也可以递归遍历子目录且递归的深度可以用代码控制,下面让我们分别看下怎么遍历整个目录树以及怎么控制深度吧。

os.walk默认是遍历整个目录树的,如下代码就会递归打印出当前目录下所有文件:

那我们怎么控制遍历的深度,比如只遍历n层呢?其实很简单,只需要定义一个深度变量,然后到达n后跳出循环即可,如下代码就只遍历1层:

至此我们已经写完4种方法了,如果你还有其他方法,欢迎评论交流。

Ⅷ python怎么获取路径下的所有文件夹名字

import os
os.chdir("D:\\python") #设置需要查看的目录
a = [x for x in os.listdir() if os.path.isdir(x)]
列表a里面就是当前目录下的文件夹名字

Ⅸ python怎么删除文件夹以及里面的所有文件

os包的rmdir()函数可以用来删除一个文件夹,但是文件夹必须是空的。一种可行的方法是读取文件夹的文件列表,逐个删除文件夹中的所有文件,然而文件夹中可能还有文件夹,因此这是一个递归的操作。x0dx0ashutil包rmtree()函数就实现了以上功能。shutil是一个高级文件操作的包,实现了文件及文件集合复制与删除的功能。rmtree()函数接收非空文件夹的路径这唯一一个参数。示例代码如下:x0dx0aimport shutilx0dx0apath = 'g:\'x0dx0ashutil.rmtree(path)

Ⅹ 自学Python:查看文件夹及子目录所有文件路径

使用路径对象glob()函数和rglob()函数,可以查看指定路径下的文件和子文件夹,两者的区别在于,glob()函数只进行一级查找,而rglob()函数会进行多级查找。

from pathlib import Path

p = Path('d:\\文件夹\\')

r = p.glob('*')

for i in r:

    print(i) #显示glob()函数的结果

print('-' * 25) #这里是分割线

r = p.rglob('*')

for i in r:

    print(i)#显示rglob()函数的结果

查看对应结果如下:

d:\11\11.txt

d:\11\r.mp3

d:\11\t.mp3

d:\11\tp1000

d:\11\文件夹

-------------------------

d:\11\11.txt

d:\11\r.mp3

d:\11\t.mp3

d:\11\tp1000

d:\11\文件夹

d:\11\文件夹\文档.txt

________________END______________

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:600
制作脚本网站 发布:2025-10-20 08:17:34 浏览:892
python中的init方法 发布:2025-10-20 08:17:33 浏览:585
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:769
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:689
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1016
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:261
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:119
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:809
python股票数据获取 发布:2025-10-20 07:39:44 浏览:718