Python 键入os.path.splitext()时只显示最后一个文件
我想重命名文件并删除每个文件中的最后4个字符(_RRR)。运行Python 键入os.path.splitext()时只显示最后一个文件,python,python-3.x,Python,Python 3.x,我想重命名文件并删除每个文件中的最后4个字符(_RRR)。运行os.listdir时会显示所有文件。拆分为tuple时,只显示最后一个文件 file_name, file_ext = os.path.splitext() print(revit_name) 键入file\u name后,仅显示最后一个文件名,而不显示其余文件名。 请帮忙 谢谢 你的问题似乎有点不清楚 如果要拆分扩展名,请将文件名作为参数传递: old_name = 'mydata.RRR' file_name, file_ex
os.listdir
时会显示所有文件。拆分为tuple时,只显示最后一个文件
file_name, file_ext = os.path.splitext()
print(revit_name)
键入file\u name
后,仅显示最后一个文件名,而不显示其余文件名。
请帮忙
谢谢 你的问题似乎有点不清楚 如果要拆分扩展名,请将文件名作为参数传递:
old_name = 'mydata.RRR'
file_name, file_ext = os.path.splitext(old_name)
os.rename(old_name, file_name)
或者,您可以使用任何方法生成新字符串
你可能在想这个
names = [name for name in os.listdir() if name.endswith('R15')]
for name in names:
os.rename(name, name[:-3])
或者,简而言之:
[os.rename(name, name[:-3]) for name in os.listdir() if name.endswith('R15')]
希望这有帮助!继续编码!
记笔记。如果在循环中执行此操作,则每次循环都会覆盖
文件名。如果你想得到所有的,把它们附加到一个列表中。好的。所以我只举一个例子。。。我有一个文件夹,里面有2000多个文件,都以R15结尾。我想从所有这些文件中删除R15,并保持其余名称不变。所以我得到了路径,所有的文件都显示出来了。使用.split后,将重命名笔记本中的文件。但在实际文件夹中。。只有最后一个文件被重命名。已编辑。更好?如果仍然无法工作,则需要提供更多代码。