斜杠与反斜杠的用法区别
来源:互联网 发布:未来网络发展调研报告 编辑:程序博客网 时间:2024/05/17 23:59
每次在编写路径的时候,总是被路径中的斜杠和反斜杠所迷惑,今天特地查了一下,总结各方面的情况,介绍如下:
1.斜杠和反斜杠的通常用法
正斜杠 “ / ” (英文名:lash)表示除法,分隔。在windows系统中通常用来分隔命令行参数,/ 表示选项等。不能作为文件名。 而在unix/linux系统中,/表示目录。由于web遵循unix命名,所以在网址(URL)中,/表示目录。 反斜杠 “ \ ” (英文名:backslash),在windows系统中用来表示目录。在很多编程语言(C/C++等)中表示转义字符。2. 在不同操作系统中的作用
在Unix/Linux中,路径的分隔采用正斜杠"/",比如"/home/hutaow";而在Windows中,路径分隔采用反斜杠"\",比如"C:\Windows\System"。
Windows 用反斜杠(“\”)的历史来自 DOS,而 DOS 的另一个传统是用斜杠(“/”)表示命令行参数,比如:dir /s /b shell32.dll
既然 DOS 这边斜杠被占用了,只好找另外一个。那就是 \ 了。而在 UNIX 环境中,我们用减号(“-”)和双减号(“--”)表示命令行参数。
3. 在写路径时用法
在C/C++中:
我们知道,在C/C++中 \ 是一种转义字符,\\ 他表示一个\,\n表示换行一样。所以C/C++中的路径名:C:\Program Files\Google\Chrome\Chrome.exe
C中应写为filename=“C:\\Program Files\\Google\\Chrome\\Chrome.exe”或filename="C:/Program Files/Google/Chrome/Chrome.exe"
C++中为 CString filename=_T("C:\\Program Files\\Google\\Chrome\\Chrome.exe");
或CString filename=_T("C:/Program Files/Google/Chrome/Chrome.exe");
有时候,利用双反斜杠写路径也认为是对的,如
在URL中:
用 / 。如:http://news.sina.com.cn/z/yadzh2013/ 。 但这里是 // 如:http://www.hao123.com/
在Python中:
方法1. 使用斜杠,如 path=‘C:/Program Files/Google/Chrome/Chrome.exe’
方法2. 使用双反斜杠,如 path=‘C:\\Program Files\\Google\\Chrome\\Chrome.exe’
方法3. 使用raw string很,如 path=r‘C:\Program Files\Google\Chrome\Chrome.exe’
利用方法3时,会遇到问题,比如
>>> print 'aa\nbb'
aa
bb
>>> print r'aa\nbb'
aa\nbb
上面的\n作为转义字符输出,这是没有问题的,下面中间的\'没有认为是转义字符输出,这是在使用raw string时,反斜杠虽然不再做转义用,但是它还有一定的作用。
这样就产生了一个问题,如果在写路径是最后的符号是\,就会报错。
如:>>> print r'c:\windows\tools\'
SyntaxError: EOL while scanning string literal
最后的\'会出错,因为\把后面的’当做是正常的符号,而没有把它当做单引号与前面的匹配。
原来,raw string本来就不是为了方便写Windows路径而设计的,而是为了方便写正则表
- 斜杠与反斜杠的用法区别
- “\”与“/”斜杠与反斜杠的区别
- “\”与“/”斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 斜杠与反斜杠的区别
- 正斜杠与反斜杠的区别
- 关于斜杠与反斜杠的区别
- 斜杠与反斜杠区别
- 反斜杠/与\区别
- 正斜杠(/)与反斜杠(\)的区别
- 路径中斜杠/与反斜杠\ 的区别
- 斜杠/ 与反斜杠/
- 斜杠与反斜杠
- 斜杠与反斜杠
- 侃中介者模式(Mediator)
- poj1033
- 13、C++类基本知识
- 14、C++复制构造函数和赋值构造函数的代码实例
- Android应用程序获得root权限
- 斜杠与反斜杠的用法区别
- 15、C++类的友元
- 16、C++中常对象以及常成员
- Linux: the big picture
- Linux中rpm、src.rpm、源码包软件的安装
- Android开发_绚丽的自定义Gallery
- Android四大组件简述之Activity
- 17、C++运算符的重载
- yum命令的使用方法