我试图为来自不同文件夹的多个文件创建一个路径列表,该文件具有相同的名称和格式。我尝试用以下代码对os.walk执行此操作:
import os
list_raster = []
for (path, dirs, files) in os.walk(r"C:\Users\Douglas\Rasters\Testing folder"):
for file in files:
if "woody02.tif" in file:
list_raster.append(files)
print
我已经编写了代码来查找两个给定文件夹(路径)之间的公共文件,如果存在的话,可以考虑所有子文件夹的级别。
如果有更有效的方法,请提出建议。如果给出了包含多层子文件夹的文件夹,则需要花费的时间太长。
def findCommonDeep(self,path1,path2):
commonfiles = []
for (dirpath1, dirname1, filenames1) in os.walk(path1):
for file in filenames1:
for (dirpath2, dirname2, filenames2) i
以下面的方式使用os.walk是递归搜索文件夹并返回所有以.tnt结尾的文件的最省时的方法吗?
for root, dirs, files in os.walk('C:\\data'):
print "Now in root %s" %root
for f in files:
if f.endswith('.tnt'):
我有一个脚本,我使用rsync将文件推送回我的家用PC。成功推送的文件名会添加到sqlite数据库中,这样它们就不会再被推送了(因为我只想要单向镜像)。无论如何,我的问题是,尽管脚本递归地沿着源路径向下移动,并根据定义的扩展名推送文件,但这些文件向下移动到相同的目标根目录。
我正在尝试的是让目标文件夹结构与源文件夹结构相同。
我想我必须在destDir路径中添加一些东西,但不太确定是什么:
for root, dirs, files in os.walk(sourceDir):
for file in files:
//If some filtering criteria
我试图通过包含os.walk()文件的5个文件夹进行mp3。我想显示每个文件夹和文件的时间戳,以及它们的大小和当然的名称。
使用
for x in os.walk(os.getcwd()):
print(x)
我能够获得文件夹和文件名,但不知道如何迭代它们,因为每个文件夹都是一个元组。我希望将每个元组分配给不同的变量,以便更好地访问它们,但我不知道如何在for循环中这样做。
有什么办法吗?或者如何以更好的方式完成我想做的事?谢谢!
因此,我的程序search_file.py试图在它当前放置的目录中查找.log文件。为此,我使用了以下代码:
import os
# This is to get the directory that the program is currently running in
dir_path = os.path.dirname(os.path.realpath(__file__))
# for loop is meant to scan through the current directory the program is in
for root, dirs, files in os.wa
我正在尝试解析给定文件夹/子文件夹中的所有XML文件,并搜索和替换该XML中的文本。而不包括子文件夹"Archive“。我收到错误消息"AttributeError:'NoneType‘object has no attribute 'replace'“不确定我遗漏了什么,但是我的循环在到达ElementTree打开并解析XML之后似乎就死了。
for roots, dirs, files in os.walk("C:\test", topdown=True):
if 'Archive' in dirs:
比如说我有个电话簿。
在这个目录中有单个文件和文件夹。
其中一些文件夹也可能有子文件夹,等等。
我要做的是找到这个目录中以“偶然事件”开头的所有文件,并将每个csv读入一个熊猫数据框架。
我能够循环遍历所有文件并获取名称,但无法将它们读取到数据帧中。
我得到的错误是"___.csv“不存在,因为它可能不是直接在目录中,而是在该目录中的另一个文件夹中。
我一直在尝试附加的密码。
inc_files2 = []
pop_files2 = []
for root, dirs, files in os.walk(directory):
for f in fi
我有3个文件夹(A,B和C)在来源。每个文件夹至少包含一个文件。我希望在每个文件夹中找到最新的文件,并将其发送到目的地,其中也包含文件夹A、B和C。非最新文件将被移到Archive,其中还包含文件夹A、B和C。我使用了下面的代码,但我得到了以下错误:NotADirectoryError: [WinError 267] The directory name is invalid: 'c:\\data\\AS\\Desktop\\Source\\A\\12.txt'
这是我的密码:
from datetime import datetime,timedelta
import shu
我正在使用来自的代码从目录中生成一个zip文件。我给函数一个从GUI到文件夹的绝对路径。目前,假设路径是c:\user.,zip文件夹结构是用户.。
如何删除绝对路径位,并将路径的最终文件夹用于压缩文件?我理解结果是正确的,因为我所描述的是来自os.walk的结果,但我想去掉绝对路径。
def zipdir(path, zip):
for root, dirs, files in os.walk(path):
for file in files:
zip.write(os.path.join(root, file))
我有这个剧本。
for (root, dirs, file) in os.walk("Missions"):
for f in file:
if ('py' in f) and (f!="__init__.py"):
print("TRYING "+f)
Mission = importlib.import_module(f.split(".py")[0])
Mission
我试图设置一个301从子域重定向到facebook页面。我在下面使用它,并将其上传到服务器上的根文件夹。我也试着把它上传到子文件夹(example.com/blog),但是没有用.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog.example.co.uk
RewriteRule ^(.*)$ http://www.facebook.com/example/$1 [R=301,L]
#Deny access to htaccess
Order Allow,Deny
Deny from all
有人
我尝试在递归函数中使用os.walk()来递归地遍历整个目录并重命名文件(只需将给定路径下所有文件的名称大写)。我的(简单)代码如下:
def recursiveRename(path):
""" This uses the os.walk function to walk through a directory """
rename(path)
for root, sub, files in os.walk(path):
i = 0
print (sub)
while(i
我使用这段代码递归地查找文件夹中大小大于50000字节的文件。
def listall(parent):
lis=[]
for root, dirs, files in os.walk(parent):
for name in files:
if os.path.getsize(os.path.join(root,name))>500000:
lis.append(os.path.join(root,name))
re
从我在网上所读到的,在这里,os.walk是查找目录中所有子目录和文件的最佳选择之一,但我的问题是,如果我只想递归地找到所有的os.walk,那么os.walk是最快的解决方案吗?
另外,我想我的问题是,既然对os.walk的调用涉及到for root, dirs, files in os.walk(path),如果您不一定要调用它,os.walk实际上会查看所有的文件吗?
目前,我的代码是:
for root, dirs, files in os.walk(path):
for x in dirs:
DoStuffHere
但是,在一个包含许多子目录和文件的文件夹中,
我试图使用os.walk来检查文件夹(和子文件夹)中的所有cbz文件。我在C:驱动器上的一个文件夹上测试过这个,一切都很好。但是,在映射的网络驱动器(Q:)上运行它时,它将立即结束,没有结果。
我尝试过使用r"Q:/Multimedia/Comics"和Q:\\Multimedia\\Comics,但两者都不起作用。
def get_all_file_paths(directory):
file_paths = []
for root, directories, files in os.walk(directory):
for filename
我试图从存储驱动器中打印出二级目录的列表。文件夹层次结构是
E:
一个
A1
A2
B
B1
B2
C
C1
C2
等
dirname = "E:\\"
def walk_method(dirname):
subfolders = [i for i in next(os.walk(dirname))[1]]
for dir in list(subfolders):
second_level = [next(os.walk(dirname+dir))[1]]
我需要一个程序,列出我在我的存储上的所有目录。我在Android上以kivy apk的形式运行代码,所以我不能更改代码的权限。我已经试过了: dir = [x[0] for x in os.walk("/storage/")] 但是每次我尝试列出一个我不允许读取的目录时,它就会停下来,不再列出更多的目录,尽管我的apk有安卓权限、WRITE_EXTERNAL_STORAGE和READ_EXTERNAL_STORAGE。 编辑:我现在使用 file_dir = [os.path.join(root,file) for root, dir, files in os.walk(
检查glob搜索中的任何文件夹是否为空,并打印它们的名称。
目录中有一些文件夹是空的。
这是代码:
for i in glob.iglob('**/Desktop/testna/**' ,recursive = True):
if not os.listdir(i):
print(f'{i} is empty' + '\n')
返回:
NotADirectoryError
我有一个包含有图像文件的文件夹的目录。我希望Python给我返回文件夹的数量,它们的文件加起来等于n这样的数字。
我尝试过的代码很难看,包含了很多循环,它给我的答案似乎是不正确的。
import os
def countProcess(home_folder, noOfImg):
noOfDir = 0
noOfFiles = 0
for base, dirs, file in os.walk(home_folder):
dirs.sort()
for directories in dirs:
noOfDir
os.walk有一个很有用的例子: import os
from os.path import join, getsize
for root, dirs, files in os.walk('python/Lib/email'):
print(root, "consumes", end=" ")
print(sum(getsize(join(root, name)) for name in files), end=" ")
print("bytes in", len(files),
我有一个文件夹,里面有十个文件,我想遍历它。当我打印出文件的名称时,我的代码工作正常:
import os
indir = '/home/des/test'
for root, dirs, filenames in os.walk(indir):
for f in filenames:
print(f)
打印的内容:
1
2
3
4
5
6
7
8
9
10
但是如果我试图打开循环中的文件,我得到一个IO错误:
import os
indir = '/home/des/test'
for root, dirs, filenames in
我正在试着用python写一些递归重命名文件的代码。我有一个根文件夹,里面有另一个文件夹,还有一个文件夹在那个文件夹里。每个文件夹都有一个名为"Name.txt“的文件,我想将它们改为"Test.txt",以便理解os.walk()和os.rename()是如何工作的。我写了下面的代码:
# -*- coding: utf-8 -*-
import os
def renamefiles(path):
rootstructure=os.walk(path,topdown=False)
for root,dirs,files in os.walk(r
我试图在python中使用两个不同的文件文件夹(到一个文本文件)来编写一个列表;但是,当我运行我的程序时,只有我的第二个文件路径附加到列表中,并出现在我的文本文件中。如何添加列表以便两个文件夹中的文件显示?我认为我的代码在第一步之后正在清空列表。我想保持这两个文件夹分开,不想仅仅为了列表而组合它们。
import os
from os import listdir
from os.path import isfile, join
root = r'C:\GEO\Images\data\data_2008\ims_data_2008'
mylist = [ ]
for path