Python中的左斜杠、右斜杠(正斜杠和反斜杠)_python

首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,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"\\"。

时间: 2024-10-22 22:02:40

Python中的左斜杠、右斜杠(正斜杠和反斜杠)_python的相关文章

数据库中的左连接和右连接的区别

今天,别人问我一个问题:数据库中的左连接和右连接有什么区别?如果有A,B两张表,A表有3条数据,B表有4条数据,通过左连接和右连接,查询出的数据条数最少是多少条?最多是多少条? 我被这个问题问住了,后来我去问了数据库开发人员,结果结果各种各样: a 最大12  最小0 b 最大12  最小未知 c 最大未知 最小为3 d 最大12   最小为3 e 不清楚 1.说明 (1)左连接:只要左边表中有记录,数据就能检索出来,而右边有 的记录必要在左边表中有的记录才能被检索出来 (2)右连接:右连接是只

C++中关于左值和右值的讨论

左值性(lvalueness)在C/C++中是表达式的一个重要属性.只有通过一个左值表达式才能来引用及更改一个对象(object)的值.(某些情况下,右值表达式也能引用(refer)到某一个对象,并且可能间接修改该对象的值,后述). 何谓对象?如果没有明确说明,这里说的对象,和狭义的类/对象(class/object)相比,更为广泛.在C/C++中,所谓的对象指的是执行环境中一块存储区域(a region of storage),该存储区域中的内容则代表(represent)了该对象的值(val

C++中的左值和右值

在C/C++中,左值(lvalue)和右值(rvalue)是用于规定表达式(expression)的性质.C++中表达式要不然是左值,要不然是右值. 这两个概念在C语言中比较容易理解:左值能放在赋值语句的左边,右值不能.但是当来到C++时,二者的理解就比较复杂了(PS:有对象真是麻烦) 简单的归纳: 当一个对象被用作右值的时候,用的是对象的值(内容):当对象被用作左值的时候,用的是对象的身份即在内存中的地址. 左值是代表一个内存地址值,并且通过这个内存地址,就可以对内存进行读并且写(主要是能写)

c++中的左值与右值

转载自 http://www.cnblogs.com/catch/p/3500678.html 左值 (lvalue)和右值 (rvalue) 是 c/c++ 中一个比较晦涩基础的概念,有的人可能甚至没有听过,但这个概念到了 c++11 后却变得十分重要,它们是理解 move, forward 等新语义的基础. 左值右值的定义 左值与右值这两概念是从 c 中传承而来的,在 c 中,左值指的是既能够出现在等号左边也能出现在等号右边的变量(或表达式),右值指的则是只能出现在等号右边的变量(或表达式)

Python中不同进制互相转换(二进制、八进制、十进制和十六进制)_python

在我的印象里面进制互相转换确实是很常见的问题,所以在Python中,自然也少不了把下面这些代码收为util. 这是从网上搜索的一篇也的还可以的Python进制转换,经过验证可以使用.下面贴出它的实现代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # 2/10/16 base trans. wrote by srcdog on 20th, April, 2009 # ld elements in base 2, 10, 16. import os

python中使用sys模板和logging模块获取行号和函数名的方法_python

对于python,这几天一直有两个问题在困扰我:1.python中没办法直接取得当前的行号和函数名.这是有人在论坛里提出的问题,底下一群人只是在猜测python为什么不像__file__一样提供__line__和__func__,但是却最终也没有找到解决方案.2.如果一个函数在不知道自己名字的情况下,怎么才能递归调用自己.这是我一个同事问我的,其实也是获取函数名,但是当时也是回答不出来. 但是今晚!所有的问题都有了答案.一切还要从我用python的logging模块说起,logging中的for

SQLServer中字符串左对齐或右对齐显示的sql语句_MsSql

知识点: 函数 replicate 以下代码是实现如下功能: 复制代码 代码如下: declare @sql varchar(200), --需填充的字符串 @char varchar(4), --填充使用的字符 @len int --填充后的长度 select @sql='abc' select @char=' ' select @len=10 select (right(replicate(@char,@len)+@sql,@len)) 右对齐 ,@sql+replicate(@char,@

SQLServer中字符串左对齐或右对齐显示的sql语句

知识点: 函数 replicate 以下代码是实现如下功能: 复制代码 代码如下: declare @sql varchar(200), --需填充的字符串 @char varchar(4), --填充使用的字符 @len int --填充后的长度 select @sql='abc' select @char=' ' select @len=10 select (right(replicate(@char,@len)+@sql,@len)) 右对齐 ,@sql+replicate(@char,@

掌握C++编程中反斜杠续行符的使用方法_C 语言

1) 用在宏定义中: #define CV_ARE_SIZES_EQ(mat1, mat2) \ ((mat1)->rows == (mat2)->rows && (mat1)->cols == (mat2)->cols) 2) 用在printf中,有时候printf中语句太长,需要切分,则需用到反斜杠: 3) 用"//"只能注释当前行的语句,想要将下一行一起注释掉,则可以在该行最后加上反斜杠. 另外,反斜杠除了强制换行的作用之外,还有转义符的意