Windows目录名无效

kul*_*rma 1 python command-line python-3.x

这是我的代码,我正在尝试这个,但它不断重复相同的错误.如果我做错了,请告诉我.

import os
import sys

for x in sys.argv:
    for ff in os.listdir(x):
        path = os.path.join(x, ff)
        if os.path.isdir(path):
            print('\n--' + path)
        else:
            print('\t------' + path)
Run Code Online (Sandbox Code Playgroud)

这是错误不断重复,一次又一次,请有人帮助我.

Traceback (most recent call last):
  File "E:/projects/Intern/file&folders/cc.py", line 5, in <module>
    for ff in os.listdir(x):
NotADirectoryError: [WinError 267] The directory name is invalid: 'E:/projects/Intern/file&folders/cc.py'
Run Code Online (Sandbox Code Playgroud)

小智 5

使用以下代码: -

import os
import sys

for x in sys.argv[1:]:
    for ff in os.listdir(x):
        path = os.path.join(x, ff)
        if os.path.isdir(path):
            print('\n--' + path)
        else:
            print('\t------' + path)
Run Code Online (Sandbox Code Playgroud)

你正在传递整个sys.argv列表来os.listdir()运行.第一个元素始终是脚本本身,而不是目录.因此,我们用第一个元素切割参数列表.