python关于防⽌转义
要实现的⽬标:将原字符串赋值到变量再转为⽬标字符串
原字符串:D:\\bc\\other\\Java\\Java视频教程\\1-2 -⾯向对象和封装⽬标字符串:D:/bc/other/Java/Java视频教程/1-2 -⾯向对象和封装
⽤途:把⽤户直接复制黏贴输⼊的⽂件路径(原字符串)存到变量,转换成⽬标字符串进⾏⽂件的相关操作。
因为原字符串中有/会使发⽣转义,所以想着要先防⽌转义,如果是已经定义好的原始⽂件路径(原字符串),可以⽤r\"\"防⽌转义。path=r\"D:\\bc\\other\\Java\\Java视频教程\\1-2 -⾯向对象和封装\"new_path=path.replace(\"\\\\\
print(new_path) #可以正确得到⽬标字符串
但这是已经定义好的,不是⽤户输⼊的,⽽获取⽤户输⼊的字符串存到变量后却不能把这个变量放在r\"\"⾥⾯⽽发⽣转义,⽆法进⾏操作。
然后跳到这个坑了,想着要怎么才能把变量放到r\"\"⾥⾯防⽌转义。其实获取⽤户输⼊的字符串后并不⽤放到r\"\"⾥⾯防⽌转义,因为⽤户输⼊的字符串是在控制台输⼊或者gui程序中输⼊的,在这种情况下,字符串不会被转义。控制台获取⽤户输⼊:
path = input() #这样获取的原始的字符串⾥有/也不会发⽣转义new_path=path.replace(\"\\\\\
print(new_path) #可以正确得到⽬标字符串
tkinter的gui程序中使⽤entry输⼊框获取⽤户输⼊的字符串:e = tk.Entry(window, show=None)
path = (e.get()).replace(\"\\\\\即为得到的⽬标字符串
因篇幅问题不能全部显示,请点此查看更多更全内容