永发信息网

python 对反斜杠的处理问题

答案:3  悬赏:20  手机版
解决时间 2021-04-04 08:36
  • 提问者网友:戎马万世
  • 2021-04-04 03:39
python 对反斜杠的处理问题
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-04-04 05:04
首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Windows用反斜杠,但是现在Windows
  (一)目录中的斜杠们
  python读文件需要输入的目录参数,列出以下例子:
  path = r"C:\Windows\temp\readme.txt"
  path1 = r"c:\windows\temp\readme.txt"
  path2 = "c:\\windows\\temp\\readme.txt"
  path3 = "c:/windows/temp/readme.txt"
  打开文件函数open()中的参数可以是path也可以是path1、path2、path3。
  path:"\"为字符串中的特殊字符,加上r后变为原始字符串,则不会对字符串中的"\t"、"\r" 进行字符串转义
  path1:大小写不影响windows定位到文件
  path2:用一个"\"取消第二个"\"的特殊转义作用,即为"\\"
  path3:用正斜杠做目录分隔符也可以转到对应目录,并且在python中path3的方式也省去了反斜杠\转义的烦恼
  (二)正则表达式中的斜杠们
  正则表达式匹配反斜杠"\",为什么是"\\\\"或是 r"\\"呢?
  因为在正则表达式中\为特殊符号,为了取消它在正则表达式中的特殊意义需要加一个\就变成了\\,但是问题又来了,\也是字符串中的特殊字符,所以又要分别对两个\取消其特殊意义,即为\\\\。Python中有一个原始字符串操作符,用于那些字符串中出现特殊字符,在原始字符串中,没有转义字符和不能打印的字符。这样就可以取消了\在字符串中的转义功能,即r"\\"。
全部回答
  • 1楼网友:鸠书
  • 2021-04-04 07:12
def addslashes(s):
    d = {'"':'\"', "'":"\'", "":"\", "\":"\\"}
    return ''.join(d.get(c, c) for c in s)
 
s = "John 'Johny' Doe (a.k.a. "Super Joe")\"
print s
print addslashes(s)
自定义一个addslashes()函数吧
  • 2楼网友:拜訪者
  • 2021-04-04 05:40
"'"".replace("'","\'").replace(""","\"")追问

理想结果为


打印后的结果
追答你的理想结果把双引号给去掉了,我的示例当中有单引号和双引号的,你的问题当中也没说清楚,“一条反斜杠+引号”,这个所加的引号是单引号还是双引号,还是保留原来的引号不变,最好给一个例子来说明下
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯