首页>>后端>>Python->python能输出目录有多少层吗(python能输出目录有多少层吗为什么)

python能输出目录有多少层吗(python能输出目录有多少层吗为什么)

时间:2023-11-30 本站 点击:1

本篇文章首席CTO笔记来给大家介绍有关python能输出目录有多少层吗以及python能输出目录有多少层吗为什么的相关内容,希望对大家有所帮助,一起来看看吧。

本文目录一览:

1、python 获得指定目录下所有文件名 要求:linux下,使用Python2.7,获取第一层文件、文件夹2、python 检查两个文件夹的内容是否相同,里面有很多文件夹和文件,最主要的是不知道文件夹有几层!!!3、python遍历目录就是这么简单4、python怎么用递归遍历多层目录树5、python怎样创建多级目录6、怎么用python自动生成目录

python 获得指定目录下所有文件名 要求:linux下,使用Python2.7,获取第一层文件、文件夹

import os

Path='目录全路径'

fout=open('输出文件名','w')

for Name in os.listdir(Path) :

(缩进) Pathname= os.path.join(Path,Name)

(缩进) printfout,Pathname

fout.close()

纯手工写作,没有测试

python 检查两个文件夹的内容是否相同,里面有很多文件夹和文件,最主要的是不知道文件夹有几层!!!

我在公司写过一模一样的程序。我的方法是先用os.walk遍历所有文件,把两个文件夹的所有文件名弄在一个list里面。然后比较两个list元素,再对比每个文件的内容。如果lz是妹子的话欢迎加我QQ探讨,汉子就照着我的思路自己写吧。。。

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怎么用递归遍历多层目录树

Python实现递归遍历指定文件目录(startdir),从而找到所有与指定的文件或目录(target)名相同的文件或目录的绝对路径。

scandir.py :

#! /usr/bin/python

# filename : scandir.py

# author : Jesse

# update : 2011/08/15 10:16

import os

def scandir(startdir, target) :

os.chdir(startdir)

for obj in os.listdir(os.curdir) :

if obj == target :

print os.getcwd() + os.sep + obj

if os.path.isdir(obj) :

scandir(obj, target)

os.chdir(os.pardir) #!!!

startdir = raw_input('Please input startdir: ')

target = raw_input('Please input target: ')

scandir(startdir, target)

关于该程序的一点说明:

1. 函数scandir的形参target可以是目录名也可以是文件名。

2. 函数chdir的作用是切换到指定目录,该参数必须是有效的且有访问权限的相对路径或绝对路径。

3. 函数的第五行,使用getcwd函数也是为了取得当前绝对路径。

4. 加号作为字符串的连接符。os.sep根据你的操作系统给出目录分隔符,在GNU/Linux和UNIX上它的返回值是'/',在windows上它的返回值是'\\',在Mac OS上是‘:’,使用os.sep而不直接使用字符,会提高程序的可移植性。

5. 递归调用后,一定不能忘了os.chdir(os.pardir),返回上层目录(即父目录)。

重要:

1. 理解for中的两个并列的if语句,并列是为了解决目标是文件夹时,该目标文件夹中包含符合要求的文件夹。

2. 如果指定目录中存在访问受限的文件或文件夹,该程序会失败,返回无权访问信息。

python怎样创建多级目录

具体实现方法如下:

import os

os.makedirs( "/home/jb51/data" )

这样就可以创建一个三级目录。

怎么用python自动生成目录

先要引入os模块

使用mkdir方法创建一个tt文件夹,参数是文件夹的路径:

假如我们使用mkdir方法创建多层文件夹,也就是说,文件夹f:/tt1和文件夹f:/tt1/tt1都是不存在的,这时候就会出现错误

我们可以使用makedirs方法来创建多层目录:

结语:以上就是首席CTO笔记为大家介绍的关于python能输出目录有多少层吗和python能输出目录有多少层吗为什么的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/4792.html