[英]How to configure Django to redirect multiple slashes (/) to single slash
[英]How to replace multiple forward slashes in a directory by a single slash?
我自己的路:
'/home//user////document/test.jpg'
我希望将其转换为:
'/home/user/document/test.jpg'
这该怎么做?
使用os.path.abspath
或normpath
规范化路径:
>>> 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'
通过使用正则表达式,此解决方案非常简单。
您可以使用 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('//', '/')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.