相关疑难解决方法(0)

python存储带有正向和反向斜杠的路径名

我有一个过程,os.walk目录及其子目录过滤pdf文件,分离出它们的名称和相应的路径名.我遇到的问题是,它将扫描最顶层的目录并打印相应的文件名,G:/Books/Title.Pdf但第二个它扫描一个子文件夹,例如G:/Books/Sub Folder/Title.pdf它将打印以下内容

G:/Books/Sub Folder\\Title.Pdf
Run Code Online (Sandbox Code Playgroud)

(显然是无效的路径名).它还会将\\添加到子文件夹中的任何子文件夹.

以下是程序:

def dicitonary_list():
    indexlist=[]        #holds all files in the given directory including subfolders
    pdf_filenames=[]    #holds list of all pdf filenames in indexlist
    pdf_dir_list = []   #holds path names to indvidual pdf files 

    for root, dirs,files in os.walk('G:/Books/'):
        for name in files:
            indexlist.append(root + name)
            if ".pdf" in name[-5:]:
                pdf_filenames.append(name)

    for files in indexlist:
        if ".pdf" in files[-5:]:
            pdf_dir_list.append(files)

    dictionary=dict(zip(pdf_filenames, pdf_dir_list))       #maps the pdf names to their directory address
Run Code Online (Sandbox Code Playgroud)

我知道这是一件很简单的事情,我很遗憾,但是对于爱情和金钱我都能看到它是什么.一双新鲜的眼睛会有很大的帮助!

python list os.walk python-2.7

2
推荐指数
1
解决办法
7346
查看次数

标签 统计

list ×1

os.walk ×1

python ×1

python-2.7 ×1