如何通过程序获取文件重命名后的文件名?附Python代码示例
获取文件重命名后的文件名
其实结合你给出的场景,有几种简单直接的方案,完全不用绕弯路:
直接复用输入变量:
你传给os.rename()的第二个参数nw1本身就是你设置的新文件名啊!只要重命名操作成功,这个变量里存的就是你要的结果。比如直接打印或者在后续逻辑里用它:import os nw1 = input("Word?") os.rename('0123.py', nw1) print(f"文件已成功重命名为:{nw1}")提取纯文件名(如果输入带路径):
要是用户输入的是带路径的名称(比如./scripts/new_file.py),而你只需要纯文件名部分,可以用os.path.basename()来提取:import os nw1 = input("Word?") os.rename('0123.py', nw1) pure_filename = os.path.basename(nw1) print(f"文件的纯新名称是:{pure_filename}")带异常处理的安全版本:
为了避免重命名失败(比如原文件不存在、权限不够)导致后续逻辑出错,最好加上异常处理,确认成功后再获取名称,还可以用os.path.abspath()拿到绝对路径:import os nw1 = input("Word?") try: os.rename('0123.py', nw1) full_path = os.path.abspath(nw1) print(f"重命名成功!新文件的绝对路径是:{full_path}") except FileNotFoundError: print("哦豁,原文件0123.py找不到呀!") except PermissionError: print("糟糕,你没有权限修改这个文件!") except Exception as err: print(f"重命名出问题了:{err}")
如果是其他场景(比如不是你主动发起的重命名),可能需要遍历目录对比文件属性,但在你给出的这个场景里,直接用nw1是最省心的方案~
内容的提问来源于stack exchange,提问作者Sukumar Naik
相关产品推荐
相关产品推荐

