鱼C论坛

 找回密码
 立即注册
查看: 1432|回复: 6

[已解决]关于os模块的rename问题

[复制链接]
发表于 2022-3-17 23:46:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> os.rename('a','curren')
Traceback (most recent call last):
  File "<pyshell#23>", line 1, in <module>
    os.rename('a','curren')
FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'a' -> 'curren'

这个函数只有old和new两个参数,并没有文件路径的参数,那如何才能顺着路径找到我想改名的文件呢
最佳答案
2022-3-18 07:04:41
本帖最后由 wp231957 于 2022-3-18 07:12 编辑
Jerry~Mouse 发表于 2022-3-17 23:55
诶?不是很明白呢 假如我的路径是‘E:\\a\\b\\c’  那这个语句应该怎么写呢

  1. os.rename(".//tools//demo//t1.py","p11.py")       #这个是把tools//demo//t1.py的  重命名到当前路径下命名为p11.py       这里有着移动文件的味道
  2. os.rename("p11.py",".//tools//demo//t1.py")                #这个是把当前路径下的p11.py  重命名到tools//demo//t1.py      这里有着移动文件的味道
  3. os.rename(".//tools//demo//t1.py",".//tools//demo//t21.py")   #这里就是在原目录下重命名  没有移动

复制代码


至于其它路径  自己试一下    应该没啥问题的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-3-17 23:50:31 From FishC Mobile | 显示全部楼层
相对路径和全路径都可以的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-17 23:55:16 | 显示全部楼层
wp231957 发表于 2022-3-17 23:50
相对路径和全路径都可以的

诶?不是很明白呢 假如我的路径是‘E:\\a\\b\\c’  那这个语句应该怎么写呢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-18 06:56:43 | 显示全部楼层
Jerry~Mouse 发表于 2022-3-17 23:55
诶?不是很明白呢 假如我的路径是‘E:\\a\\b\\c’  那这个语句应该怎么写呢

这是直接目录下的重命名
  1. import os
  2. os.getcwd()
  3. 'D:\\python310'
  4. os.rename("t1.py","p1.py")
  5. os.listdir()
  6. ['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'p1.py', 'python.exe', 'python3.dll', 'python310.dll', 'pythonw.exe', 'Scripts', 't2.py', 'tcl', 'Tools', 'vcruntime140.dll', 'vcruntime140_1.dll']
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-18 07:04:41 | 显示全部楼层    本楼为最佳答案   
本帖最后由 wp231957 于 2022-3-18 07:12 编辑
Jerry~Mouse 发表于 2022-3-17 23:55
诶?不是很明白呢 假如我的路径是‘E:\\a\\b\\c’  那这个语句应该怎么写呢

  1. os.rename(".//tools//demo//t1.py","p11.py")       #这个是把tools//demo//t1.py的  重命名到当前路径下命名为p11.py       这里有着移动文件的味道
  2. os.rename("p11.py",".//tools//demo//t1.py")                #这个是把当前路径下的p11.py  重命名到tools//demo//t1.py      这里有着移动文件的味道
  3. os.rename(".//tools//demo//t1.py",".//tools//demo//t21.py")   #这里就是在原目录下重命名  没有移动

复制代码


至于其它路径  自己试一下    应该没啥问题的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-18 10:48:43 From FishC Mobile | 显示全部楼层
参数既可以是文件名也可以是相对路径、完整路径
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-3-18 13:25:38 | 显示全部楼层
hrpzcf 发表于 2022-3-18 10:48
参数既可以是文件名也可以是相对路径、完整路径

明白了 谢谢解答~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-21 00:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表