python路径字符串斜杠替换
以下是单反斜杠替换成正斜杠和双反斜杠的方法。
1
2
3
4
5
6
7
8
9
|
# 单反斜杠 originPath = r 'D:\图片\Zbtv1.jpg' # 加上r后变为原始字符串,则不会对字符串进行转义 # 替换成正斜杠 nowPath1 = originPath.replace( '\\',' / ') # 替换为D:/图片/Zbtv1.jpg # 替换成双反斜杠 nowPath2 = originPath.replace( '\\',' \\\\') # 替换为D:\\图片\\Zbtv1.jpg nowPath3 = originPath.replace( '\\',r' \\') # 替换为D:\\图片\\Zbtv1.jpg print (nowPath1,nowPath2,nowPath3) |
python将双斜杠替换为单斜杠
字符串问题
在处理字符串的编码问题的时候,有时候需要对一些字串进行精细化的处理。
如:我有一个字符串是’%C2%FA99%BC%F55’,我想把它替换为’\xc2\xfa99\xbc\xf55’,看样子貌似是把’%’替换为’\x’,但是因为,后者的字符串中’\xc2’是一个单位,所以使用replace('%','\x')或者replace('%','\x')都是不能成功的。
需要使用一些转化的技巧:
1
2
3
4
5
6
7
8
9
|
def transGbk2Unicode(str_v): str_s = str_v.replace(r '%' , r '\x' ) res = eval ( repr (str_s).replace( '\\\\', ' \\')) return res.decode( 'gb2312' ) tmp_a = r '%C2%FA99%BC%F55' tmp_a = '%C2%FA99%BC%F55' m = transGbk2Unicode(tmp_a) print m |
如上处理,才可以将’%’替换为’\x’。
问题处理
所以可以使用以上的办法,将双斜杠替换为单斜杠。
例子如下:
1
2
3
4
5
6
7
8
9
10
11
|
a = r 'fdf\nfasd' print a Out[ 1 ]: fdf\nfasd z = eval ( repr (a).replace( '\\\\', ' \\')) print z Out[ 2 ]: fdf fasd In[ 3 ]: a Out[ 3 ]: 'fdf\\nfasd' In[ 3 ]: z Out[ 3 ]: 'fdf\nfasd' |
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_37088317/article/details/105158890