Python 与os.listdir一起使用os.path.abspath时未获取完整路径

Python 与os.listdir一起使用os.path.abspath时未获取完整路径,python,parsing,directory,os.path,Python,Parsing,Directory,Os.path,我尝试使用以下代码行获取给定目录中文件的所有路径名: trainDB = [os.path.abspath(x) for x in os.listdir("C:/Users/sean/Documents/uni/ANLP/Data/Train/DrugBank")] 但输出是这样的: ['C:\\Users\\sean\\Documents\\uni\\ANLP\\Data\\19-norandrostenedione_ddi.xml', ...] 鉴于我希望/期望结果路径为: `'C:\\

我尝试使用以下代码行获取给定目录中文件的所有路径名:

trainDB = [os.path.abspath(x) for x in os.listdir("C:/Users/sean/Documents/uni/ANLP/Data/Train/DrugBank")]
但输出是这样的:

['C:\\Users\\sean\\Documents\\uni\\ANLP\\Data\\19-norandrostenedione_ddi.xml', ...]
鉴于我希望/期望结果路径为:

`'C:\\Users\\sean\\Documents\\uni\\ANLP\\Data\\Train\\DrugBank\\19-norandrostenedione_ddi.xml'

我不明白为什么Train/DrugBank目录不在路径中,如果它有任何用处的话,我从
ANLP
目录运行这些命令,该目录位于
数据的上方

pathtrainDB = 'C:\\Users\\sean\\Documents\\uni\\ANLP\\Data\\Train\\DrugBank'
filestrainDB = os.listdir(pathtrainDB)
filepathstrainDB = [os.path.join(pathtrainDB,f) for f in filestrainDB]

listdir
仅返回给定目录的内容。您需要
join
将其连接到给定目录,然后可能将其传递到
abspath
abspath
正在使用
listdir
中的文件名连接当前工作目录。