如果我的问题听起来很愚蠢的话,我真的很擅长编码。我已经创建了一个程序,我需要它来删除在运行时创建的任何临时文件。
到目前为止,我偶然发现的第一个错误是没有足够的权限删除文件夹,因此try-except为PermissionError
。其次我需要将其上传到trinket.io链接进行测试并将其发送给评分,但似乎没有删除,也没有权限错误?似乎整个功能都被跳过了。这是我到目前为止在文件删除功能上的内容。它只保留4个必要的文件...
def clear_temps():
c=os.getcwd()
d=os.listdir(c)
for file in d:
if '.py' in file or '.csv' in file and not file=='mytemp.csv':
pass
else:
if os.path.isdir(file):
os.path.split(file)
try:
os.remove(file)
except PermissionError:
pass
答案 0 :(得分:0)
您编写的代码应该可以正常工作。在本地Python编辑器中尝试检查它是否确定。
我注意到,在删除文件的小饰品中,标签不会被删除,但是如果你在文件夹中签入文件就不存在了。
您可以使用此代码检查文件是否仍然存在:
def clear_temps():
c=os.getcwd()
d=os.listdir(c)
for file in d:
if '.py' in file or '.csv' in file and not file=='mytemp.csv':
pass
else:
if os.path.isdir(file):
os.path.split(file)
try:
print(os.path.isfile(file))
os.remove(file)
print(os.path.isfile(file))
except PermissionError:
pass
我在删除之前和之后添加了检查文件是否存在的信息。
因此,如果输出:True False
,则真正删除了饰品中的文件,如果True True
,则文件仍然存在。