本文翻译自:how to check if a file is a directory or regular file in python? [duplicate]
Possible Duplicate: 可能重复:
How to identify whether a file is normal file or directory using python 如何使用python识别文件是普通文件还是目录
How do you check if a path is a directory or file in python? 如何检查路径是否是python中的目录或文件?
#1楼
参考:https://stackoom.com/question/DRi2/如何检查文件是否是python中的目录或常规文件-重复
#2楼
Many of the Python directory functions are in the os.path
module . 许多Python目录函数都在os.path
模块中 。
import os
os.path.isdir(d)
#3楼
os.path.isfile("bob.txt") # Does bob.txt exist? Is it a file, or a directory?
os.path.isdir("bob")
#4楼
use os.path.isdir(path)
使用os.path.isdir(path)
more info here http://docs.python.org/library/os.path.html 更多信息请访问http://docs.python.org/library/os.path.html
#5楼
An educational example from the stat documentation: 统计文档中的教育示例:
import os, sys
from stat import *
def walktree(top, callback):
'''recursively descend the directory tree rooted at top,
calling the callback function for each regular file'''
for f in os.listdir(top):
pathname = os.path.join(top, f)
mode = os.stat(pathname)[ST_MODE]
if S_ISDIR(mode):
# It's a directory, recurse into it
walktree(pathname, callback)
elif S_ISREG(mode):
# It's a file, call the callback function
callback(pathname)
else:
# Unknown file type, print a message
print 'Skipping %s' % pathname
def visitfile(file):
print 'visiting', file
if __name__ == '__main__':
walktree(sys.argv[1], visitfile)