加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_池州站长网 (https://www.0566zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

简化Python中的路径

发布时间:2023-02-01 14:33:22 所属栏目:Unix 来源:
导读:  假设我们有一个文件的绝对路径(例如Unix File system),我们必须对其进行简化。换句话说,我们必须将其转换为规范路径。在UNIX样式的文件系统中,句点“。” 指当前目录。双句点“ ..”会
  假设我们有一个文件的绝对路径(例如Unix File system),我们必须对其进行简化。换句话说,我们必须将其转换为规范路径。在UNIX样式的文件系统中,句点“。” 指当前目录。双句点“ ..”会将目录上移(父目录)。规范路径的属性如下。
 
  因此,例如,如果给定的路径为“ /home/”、“/../”和“ / home // user /”,则转换后的路径为“ / home”,“ /”和“ / home /用户”
 
  让我们看看步骤-
 
  如果st只有一个元素unix路径简化,则返回'/'
 
  连接st中存在的所有元素后返回
 
  让我们看下面的实现以更好地理解-
 
  示例
 
  class?Solution:
 
  ???def?simplifyPath(self,?a):
 
  ??????st?=?['/']
 
  ??????a?=?a.split("/")
 
  ??????for?i?in?a:
 
  ?????????if?i?==?'..':
 
  ????????????if?len(st)?>?1:
 
  ???????????????st.pop()
 
  ????????????else:
 
  ???????????????continue
 
  ?????????elif?i?==?'.':
 
  ????????????continue
 
  ?????????elif?i?!=?'':
 
  ????????????st.append("/"?+?str(i))
 
  ??????if?len(st)?==?1:
 
  ?????????return?"/"
 
  ??????return?"".join(st[1:])
 
  ob1?=?Solution()print(ob1.simplifyPath("/home/"))
 
  print(ob1.simplifyPath("/../"))
 
  print(ob1.simplifyPath("/home//user/"))
 
  输入值
 
  "/home/"
 
  "/../"
 
  "/home//user/"
 
  输出结果
 
  /home
 
  /
 
  /home/user
 
 

(编辑:我爱制作网_池州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章