目录名无效

时间:2013-07-17 14:38:47

标签: windows python-2.7 directory

以下代码给了我很久以来见过的最奇怪的错误。当我不使用时,IT会参考/*.*? 代码:

t_src = src.get()
t_dst = dst.get()

print t_src

try:
    for item in os.listdir(t_src):
        print item

        s = os.path.abspath(os.path.join(t_src,item))
        d = os.path.abspath(os.path.join(t_dst, item))

        for filename in os.listdir(s):
            try:
                if os.path.isfile(filename):
                    print filename


                elif os.path.isdir(filename):
                    print "Possible Dirrectory"
                    print filename
                    #shutil.copytree(filename, d)
            except:
                print "Unexpected error:", traceback.format_exc()

except:
    print "Unexpected error:", traceback.format_exc()

错误:

C:\Windows\system32\cmd.exe /c python CopyDir.py
AS.txt
Unexpected error: Traceback (most recent call last):
  File "CopyDir.py", line 46, in copyFiles
    for filename in os.listdir(s):
WindowsError: [Error 267] The directory name is invalid: 'C:\\Users\\JG
\\Desktop\\Hello World\\AS.txt/*.*'

src.get()来自Tkinter,因为我正在使用GUI。这没问题。 t_src生成以下示例

C:/Users/JG/Desktop/Hello World

主要目标是输出文件夹中的所有文件,然后查找两者之间的变化,您需要相同的文件等。但是正如您可以看到它生成的文件结构不是&#39 ;是正确的。

我正在使用Windows Python 2.7.5以及文本编辑器VIM(非常棒)。

1 个答案:

答案 0 :(得分:0)

ITEM是文件名 - 将文件名提供给os.listDir会导致我收到的错误。要批准该问题,请使用'os.walk(t_src)'