1. 你可以自己寫一個:def listdir_nohidden(path):
for f in os.listdir(path):
if not f.startswith("."):
yield f
或者你的一個萬用字元:def listdir_nohidden(path):
return glob.glob(os.path.join(path, "*"))
無論這些將忽略所有與開始"."。
2. GLOB:>>> import glob
>>> glob.glob("*")
(glob索賠listdir和fnmatch引擎蓋下,但它也檢查領導".",不fnmatch。)
3. 僅在Windows和Linux:if os.name == "nt":
import win32api, win32con
def folder_is_hidden(p):
if os.name== "nt":
attribute = win32api.GetFileAttributes(p)
return attribute & (win32con.FILE_ATTRIBUTE_HIDDEN | win32con.FILE_ATTRIBUTE_SYSTEM)
else:
return p.startswith(".") #linux
4.filter( lambda f: not f.startswith("."), os.listdir("."))
1. 你可以自己寫一個:def listdir_nohidden(path):
for f in os.listdir(path):
if not f.startswith("."):
yield f
或者你的一個萬用字元:def listdir_nohidden(path):
return glob.glob(os.path.join(path, "*"))
無論這些將忽略所有與開始"."。
2. GLOB:>>> import glob
>>> glob.glob("*")
(glob索賠listdir和fnmatch引擎蓋下,但它也檢查領導".",不fnmatch。)
3. 僅在Windows和Linux:if os.name == "nt":
import win32api, win32con
def folder_is_hidden(p):
if os.name== "nt":
attribute = win32api.GetFileAttributes(p)
return attribute & (win32con.FILE_ATTRIBUTE_HIDDEN | win32con.FILE_ATTRIBUTE_SYSTEM)
else:
return p.startswith(".") #linux
4.filter( lambda f: not f.startswith("."), os.listdir("."))