我是Python的初学者,我一直在编写一个代码来访问两种类型的文件(dcd和inp文件),组合它们并创建一个带有匹配字符串的新列表。你知道吗
一开始我被困在什么地方了。我想把所有的dcd文件都拿到这里。所以它们有.dcd扩展,但第一部分不一样。所以我在想,是否有一种方法可以在我分裂了字符串之后访问它们。你知道吗
#collect all dcd files into a list
list1 = []
for filename1 in glob.glob('*/FEP_SYAF014*/FEP1/298/*/*.dcd'):
filename1 = filename1.split('/')
filename1.sort()
list1.append(filename1)
我只想得到带有dcd扩展名的名称,这些名称被编入索引[5],并创建一个新的列表或对这个列表进行变异,但我不知道如何做到这一点。你知道吗
另外,我刚刚公布了代码的第一部分 谢谢您! the oddly sorted partthis one looks better
这就是我希望它看起来的样子,但是排序并且没有eq*文件。 want this sorted
排序函数应用于文件名部分。这不是你想要的。如果我理解的很好,你想排序的文件名列表,而不是文件名的部分。你知道吗
Jean-François给出的代码很好,但我猜您希望自己的代码能够正常工作。你知道吗
您只需要使用分割的最后一部分来提取文件名
拆分返回字符串列表。每一项都是原件的一部分。你知道吗
文件名=文件名.split('/')[长度(文件名.split(“/”)-1]
这条线会给你最后一部分 然后你可以把那部分加到你的名单上 在所有这些之后,你可以整理你的清单
希望这有帮助!你知道吗
所以这起作用了。我刚刚添加了del filename1[:5]以除去其他不必要的字符串部分 导入操作系统,全局 list1=已排序(全球。全球('/FEP\u SYAF014/FEP1/298//.dcd'),键=操作系统路径基名称)你知道吗
只需将
sort
与排序键一起使用:os.path.basename
(仅提取要执行排序的文件的基名称):相关问题 更多 >
编程相关推荐