Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 键入os.path.splitext()时只显示最后一个文件_Python_Python 3.x - Fatal编程技术网

Python 键入os.path.splitext()时只显示最后一个文件

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

我想重命名文件并删除每个文件中的最后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_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后,将重命名笔记本中的文件。但在实际文件夹中。。只有最后一个文件被重命名。已编辑。更好?如果仍然无法工作,则需要提供更多代码。