我试图从目录中删除扩展名为.pcp的文件。 如果我列出了我得到的目录:
>>> for i in os.listdir(folder):
... if i.endswith(".pcp"):
... print(i)
...
1.pcp
2.pcp
3.pcp
4.pcp
5.pcp
6.pcp
7.pcp
8.pcp
9.pcp
10.pcp
如果我跑的话:
>>> for i in os.listdir(folder):
... if i.endswith(".pcp"):
... os.remove(os.path.join(dir, i))
...
我收到错误:
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
File "C:\Program Files (x86)\IronPython 2.7\Lib\ntpath.py", line 96, in join
TypeError: len() of unsized object
请指出我在做什么错误?非常感谢。感谢。
答案 0 :(得分:1)
看起来你在打电话时打错了
os.remove(os.path.join(dir, i))
你没有得到NameError,因为dir是一个内置函数。
相反,您可能需要调用以下行:
os.remove(os.path.join(folder, i))
您还可以使用glob
模块:
import glob
files = glob.glob(os.path.join(folder,'*.pcp'))
for f in files:
os.remove(f)