1

下面的代码给了我很长一段时间以来我见过的最奇怪的错误。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

主要目标是输出文件夹中的所有文件,然后查找两者之间的更改,您必须在其中更改相同的文件等。但是您可以看到它生成的文件结构不正确。

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

4

1 回答 1

0

ITEM是一个文件名 - 将文件名赋予os.listDir将导致我得到的错误。要批准该问题,请使用'os.walk(t_src)'

于 2013-07-17T14:52:32.560 回答