如何用一个斜杠替换目录中的多个正斜杠

  • 本文关键字:替换 何用一 python string path
  • 更新时间 :
  • 英文 :


我的路径:

'/home//user////document/test.jpg'

我想把它转换成:

'/home/user/document/test.jpg'

如何做到这一点?

使用os.path.abspathnormpath规范化路径:

>>> import os.path
>>> os.path.abspath('/home//user////document/test.jpg')
'/home/user/document/test.jpg'

解决方案:
此代码片段应该可以解决您的问题:

import re
x = '/home//user////document/test.jpg'
re.sub('/+','/', x)

输出:

'/home/user/document/test.jpg'

通过使用Regex,这个解决方案非常简单
您可以使用Python标准库的"re"模块。

import re
old_path = '/home//user////document/test.jpg'
converted_path = re.sub('/+', '/', old_path)

很抱歉英语说得不流利;(

从字符串中实例化pathlib.Path对象将自动为您删除冗余斜杠:

from pathlib import Path
path = Path('/home//user////document/test.jpg')
print(path)
# /home/user/document/test.jpg

我认为最简单的方法是用'/'替换'//'两次:

a = '/home//user////document/test.jpg'
a.replace('//', '/').replace('//', '/')

相关内容

  • 没有找到相关文章

最新更新