如何使用任何 windows 文件夹的 python 的 os.listdir() 方法摆脱 desktop.ini

how to get rid of desktop.ini with python's os.listdir() method of any windows folder

我使用的是 windows 服务器 2016。我之前没有遇到过这个问题。当我 运行 下面的命令时,我得到 desktop.ini 文件。

import os
os.listdir()

另一个程序正在使用同一个文件夹。我不知道这是否会影响此行为。不过,我不想在第二个程序中使用 desktop.ini 文件。我怎样才能做到这一点?

输出:

由于这是一个列表,您每次都可以简单地删除 desktop.ini

import os as OS
items = OS.listdir()
items.remove('desktop.ini')

或者您可以从列表中列出您想要 的项目,

import os as OS
items = OS.listdir()
items_not_required = {'desktop.ini', 'someotherthing'}
[items.remove(x) for x in items if x not in items_not_required]

# OR

items_clean = set(items) - set(items_not_required)

from pathlib import Path 
[x for x in os.listdir() if x != 'desktop.ini' and Path(x).is_file()]

或者如果您想要绝对文件路径:

from pathlib import Path 
[str(Path(x).absolute()) for x in os.listdir() if x != 'desktop.ini' and Path(x).is_file()]
import os
lst = list(set(os.listdir()) - {'desktop.ini', 'whatever.ini'})