python,os.path.abspath的path参数加双点号【..\..】有什么效果?如何返回上一级目录,返回上多级目录?

一、背景

有时候我们需要返回一个目录的上好几级目录,比如【D:\BaiduNetdiskDownload\test1\test2\test3\test4】,我们想要把这个path参数转化为【D:\BaiduNetdiskDownload\test1】,退了好几级,该怎么搞呢?

二、具体处理方法

2.1 多层嵌套os.path.dirname()

#既然是向上退三个级别,就嵌套三层dirname即可
print(os.path.dirname(os.path.dirname(os.path.dirname(r'D:\BaiduNetdiskDownload\test1\test2\test3\test4'))))

# D:\BaiduNetdiskDownload\test1

2.2 多层叠加【..\..】

print(os.path.abspath('123'))
# D:\BaiduNetdiskDownload\test1\test2\test3\123
# 说明abspath输出的结果就是把输入的字符串当做相对目录连接在当前路径后边

print(os.path.abspath('..'))
print(os.path.abspath(r'D:\BaiduNetdiskDownload\test1\test2\test3\test4\..'))
print(os.path.abspath(os.path.join(r"D:\BaiduNetdiskDownload\test1\test2\test3\test4", "..")))
# 上面这三行代码实质性相同,都是输出D:\BaiduNetdiskDownload\test1\test2\test3

# 如果想要向上返回多级,就多加几个【..\..】
print(os.path.abspath(r'..\..\..'))
print(os.path.abspath(r'D:\BaiduNetdiskDownload\test1\test2\test3\test4\..\..\..'))
# 以上两行输出结果都为D:\BaiduNetdiskDownload\test1

# 上面的所有abspath改成realpath,最终效果一样。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: os.path.abspath()是Python中的一个函数,用于返回指定路径的绝对路径。如果指定的路径已经是绝对路径,则直接返回该路径。如果指定的路径是相对路径,则将其转换为绝对路径。该函数可以用于获取当前工作目录的绝对路径,也可以用于获取指定文件或目录的绝对路径。 ### 回答2: 在Python中,os.path.abspath() 方法用于获取指定路径的完整绝对路径,即对相对路径进行转换,使其变成绝对路径。os.path.abspath() 接受一个参数 path,表示将要转换的路径。 对于相对路径,os.path.abspath() 方法会将其转换成以当前工作路径为基准的绝对路径。对于绝对路径,os.path.abspath() 方法返回原路径。 例如,在Windows操作系统中,当前工作路径为 C:\myproject,假设我们给 os.path.abspath() 方法传递的参数是“../test”,则结果为 C:\test。如果我们给 os.path.abspath() 方法传递的参数是“C:\test”,则结果还是 C:\test。 需要注意的是,os.path.abspath() 方法并不判断路径是否存在或合法,它只是简单地执行字符串转换。如果传递的参数不是正确的路径字符串,os.path.abspath() 方法也不会报错,而是返回一个包含“.”的字符串(表示当前工作路径)。 此外,os.path.abspath() 还可以用于规范化路径,即去除路径字符串中的多余字符。例如,os.path.abspath("C:/myproject/../test") 返回的结果是 "C:/test",其中 "/../" 被简化为了 "/test"。 因此,os.path.abspath() 方法在编写Python程序时,非常有用。它可以方便地将相对路径转换成绝对路径,避免了由于路径错误而引起的各种问题。 ### 回答3: Python中的os.path.abspath函数是一个用于获取指定路径下的绝对路径的函数。在进行文件处理的时候,通常需要获取文件的绝对路径来确保程序的准确性。当使用相对路径时,有可能出现文件路径不正确的情况,而使用os.path.abspath可以避免这种情况的发生。 os.path.abspath函数的使用非常简单,只需要传入需要获取绝对路径的文件路径即可。如果传入的是相对路径,函数内部会将其转换为绝对路径。函数返回的是一个字符串,表示传入路径的绝对路径。 虽然os.path.abspath函数很方便,但我们在使用时需要注意,因为在Windows和Linux系统上路径分隔符是不同的,Windows上的路径分隔符是反斜杠“\”,而Linux上的路径分隔符是正斜杠“/”,因此直接使用该函数获取文件路径时,需要特别注意路径分隔符的设置。 os.path.abspath函数可以使用在文件操作和路径操作中。在文件操作时,通过该函数获取文件的绝对路径,以确保程序可以找到文件并正确执行。在路径操作中,该函数可以获取指定路径的绝对路径,方便我们对文件夹和目录进行操作。 在Python开发中,os.path.abspath函数是一个基本的路径处理工具之一,在文件操作、路径操作等多个场景中都有应用。使用时需要特别注意传入的文件路径和参数设置,以确保程序正确执行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值