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

python目录文件

发布时间: 2024-03-22 07:08:04

Ⅰ 自学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______________

Ⅱ python中怎样将文件拷贝到指定的目录下

代码:

import os
import shutil
from shutil import Error
from shutil import stat
from shutil import 2
src = "" #需要复制的文件目录
dst = "" #目标目录
def jiecptree(src, dst, symlinks=False, ignore=None): #声明函数 ree( 要复制的目录,目标目录,复制符号连接内容到新目录,没有要忽略文件)
names = os.listdir(src) #获得要复制目录的文件名列表,赋给变量 names
if ignore is not None: #如果 ignore 不是None值
ignored_names = ignore(src, names) # src目录中要忽略文件的名字赋给 ignored_names
else: # 否则
ignored_names = set() #ignore_name 被 不重复空元素集 赋值
if os.path.isdir(dst):
pass
else:
os.makedirs(dst)
# print"dstfirst:"+dst
errors = [] #声明 errors列
for name in names: #将names里的元素循环复制给name
if name in ignored_names: #如果name在要求被忽略的列里出现
continue #继续for循环(跳回for,从新循环下个元素)
srcname = os.path.join(src, name) #将路径名(src)添加到文名(name)之前然后赋值给 srcname
dstname = os.path.join(dst, name) #将路径名(dst)添加到文名(name)之前然后赋值给 dstcname
from shutil import Error
# print "name:"+name
# print "src:"+src
# print "dst:"+dst
try: #尝试
if os.path.islink(srcname):
continue
elif os.path.isdir(srcname): #如果srcname路径是存在
jiecptree(srcname, dstname, symlinks, ignore)
elif os.path.isdir(dstname):
os.remove(dstname)
2(srcname, dstname)
else: # 否则
2(srcname, dstname) # 复制srcname到dstname
# print "srcname:"+srcname
# print "dstname:"+dstname
# XXX What about devices, sockets etc.? #怎样装置
except (IOError, os.error), why: #除(IOError[与文件有关的异常],操作系统异常)外,返回原因
errors.append((srcname, dstname, str(why))) # 向errors列里添加,(要复制的目录,目标目录,错误原因)
# catch the Error from the recursive jiecptree so that we can 从递归复制中捕捉这个错误,以便于我们能继续复制其他文件
# continue with other files
except Error, err: #除错误外,返回错误:
errors.extend(err.args[0]) #扩展 errors 列,添加(err.args[0] 元素)
try: #尝试
stat(src, dst) # 从src复制权限位,上次访问时间,最后修改时间 到 dst,
except WindowsError: # 除 Windows错误 外:
# can't file access times on Windows 在Windows上无法复制文件访问时间
pass # 通过(不作任何处理)
except OSError, why: # 除 操作系统错误 外,返回原因:
errors.extend((src, dst, str(why))) #扩展 errors 列,添加(要复制的目录,目标目录,错误原因)
if errors: # 如果错误
raise Error(errors) # 提示错误

更多相关内容可参考资料http://www.viiboo.cn

Ⅲ 如何获取目录下的文件数(一行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中OS模板的什么方法用来改变默认目录

python os模板操作文件和目录常用方法

  • python 常用操作文件和目录方法:

  • 获得当前python脚本工作的目录路径:os.getcwd()

  • 返回指定目录下的所有文件和目录名:os.listdir()。例如:返回C盘下的文件:os.listdir("C:")

  • 删除一个文件:os.remove(filepath)

  • 删除多个空目录:os.removedirs(r'd:python')

  • 检验给出的路径是否是一个文件:os.path.isfile(filepath)

  • 检验给出的路径是否是一个目录:os.path.isdir(filepath)

  • 判断是否是绝对路径:os.isabs()

  • 检验路径是否真的存在:os.path.exists()。例如检验D盘下是否有Python文件夹:os.path.exists(r'd:python')

  • 分离一个路径的目录名和文件名:os.path.split()。例如:os.path.split(r'/home/qiye/qiye.txt)

    返回结果是一个元祖:('/home/qiye','qiye.txt')

  • 分离扩展名:os.path.splitext()。例如:例如:os.path.split(r'/home/qiye/qiye.txt)

    返回结果是一个元祖:('/home/qiye/qiye','.txt')

  • 获取路径名:os.path.dirname(filepath)

  • 获取文件名:os.path.basename(filepath)

  • 读取和设置环境变量:os.getenv()和os.putenv()

  • 重命名文件或者目录:os.rename(old,new)

  • 创建多级目录:os.makedirs(r'c:python est')

  • 创建单个目录:os.mkdir("test")

  • 获取文件属性:os.stat(file)

  • 获取文件大小:os.getsize(filename)

  • 删除目录:os.rmdir("dir") 只能删除空目录

  • 获取文件属性和时间戳:os.chmod(file)

Ⅳ python中怎样转到指定目录

例如使用IDLE编译python代码时,可以使用os.chdir转到指定目录

import os.

os.getcwd() #get current work direction.

os.chdir('E:\Python_File\Test') #change direction.

在这之后可以直接调用’E:Python_FileTest’目录下的函数。

或者用库调用:

import osimport shutil.

alllist=os.listdir(u"D:\notes\python\资料\")for i in alllist:

aa,bb=i.split(".") if 'python' in aa.lower():

oldname= u"D:\notes\python\资料\"+aa+"."+bb.

newname=u"d:\\newname"+aa+"."+bb.

shutil.file(oldname,newname).

(5)python目录文件扩展阅读:

Python中获得当前目录和上级目录:

获取当前文件的路径:

from os import path
d = path.dirname(__file__) #返回当前文件所在的目录 # __file__ 为当前文件, 若果在ide中运行此行会报错,可改为 #d = path.dirname('.')。

获得某个路径的父级目录:

parent_path = os.path.dirname(d) #获得d所在的目录,即d的父级目录 parent_path = os.path.dirname(parent_path) ##获得parent_path所在的目录即parent_path的父级目录。

获得规范的绝对路径:

abspath = path.abspath(d) #返回d所在目录规范的绝对路径。



Ⅵ 如何用Python实现查找"/"目录下的文件夹或文件,感谢

给你各相对来说容易理解的哈
import os
name=raw_input('filename:') #在这里输入你的查找值
a=os.listdir('/') #把所有/目录下的文件,目录存放入a
if name in a: #如果查找值在/目录下,进行进一步判断
if os.path.isdir(name): #判断是否为目录

print 'dir'

elif os.path.isfile(name) and os.pathislink(name): #符号连接即是文件又是link所以双重判断

print 'link'

elif os.path.isfile(name): #判断是否文件

print 'file'

else: #linux上文件类型多,不符合上面三种打印0ther

print 'other'
else: #不存在打印‘not exist’
print 'not exist'

热点内容
ae加快缓存 发布:2024-11-28 23:50:34 浏览:341
java的版本号 发布:2024-11-28 23:48:18 浏览:99
sql存储过程区别 发布:2024-11-28 23:35:37 浏览:918
ms计算机需要什么配置 发布:2024-11-28 23:34:21 浏览:974
淘宝直接访问的流量 发布:2024-11-28 23:33:11 浏览:49
python发微博 发布:2024-11-28 23:29:31 浏览:725
sql清空命令 发布:2024-11-28 22:58:53 浏览:487
melpython 发布:2024-11-28 22:49:54 浏览:211
服务器浏览量什么意思 发布:2024-11-28 22:49:09 浏览:965
可不可以同时安装几个编译器 发布:2024-11-28 22:34:08 浏览:935