Answers:
这两个函数都使用该os.path.split(path)函数将路径名拆分path为一对。(head, tail)。
该os.path.dirname(path)函数返回路径的开头。
例如:的目录名'/foo/bar/item'是'/foo/bar'。
该os.path.basename(path)函数返回路径的尾部。
例如:'/foo/bar/item'退货的基本名称'item'
来自:http : //docs.python.org/2/library/os.path.html#os.path.basename
os.path.basename(os.path.dirname(path))
'foo.bar',而os.path.dirname(file_name)返回一个空字符串:''。
总结一下布雷诺在上面提到的内容
假设您有一个带有文件路径的变量
path = '/home/User/Desktop/myfile.py'
os.path.basename(path) 返回字符串 'myfile.py'
和
os.path.dirname(path)返回字符串'/home/User/Desktop'(不带斜杠“ /”)
当必须给定完整路径名的文件名/目录名时,可以使用这些功能。
如果文件路径只是文件名(例如,而不是path = '/home/User/Desktop/myfile.py'您拥有myfile.py),则os.path.dirname(path)返回一个空字符串。
item使用item/,这是一个目录,然后os.path.split('foo/bar/item/')返回('foo/bar/item', '')。