一、字符串
1.1什么是字符串
字符串是python中不可变的一种数据类型,主要用来表示文本。
1.2创建一个字符串
a是变量名称右边是双引号里的字符,只要是被引号引起的python都会认为是字符串。
这里采用的是单引号,结果和上图双引号完全相同,那么为什么还有单引号和双引号呢?因为在某些情况下可能会很适用。
下图中第一个字符串包含一个单引号(这里叫撇感觉更合适),因此不能使用单引号将字符串括起,否则会报错。这里就用到了双引号。
注释:在上图中字符串为‘Let’,因此python不知道如何处理余下的内容,因为python把t后的的撇号当成了结束符,所以我们需要用双引号让python来区分,同样的假如字符串需要带有双引号那么外面有单引号括起即可
这里也可以使用\来对引号进行转义,告诉python只是个撇号,而非结束符。
ps:像这样对引号进行转义很有用,某些情况下也必须这样做,例如字符串包含单引号以及双引号,如(Let‘s say "hello"),当然如果你不想使用大量的\也有办法解决,可以使用长字符串以及原始字符串具体内容稍后会说到。
1.3拼接字符串
像数字一样让它们相加
1.4长字符串
要表示很长的字符串(跨越多行的字符串),可使用三个双引号(而不是普通引号) ,也可以使用三个单引号。
请注意:三个单引号或者双引号能够让python识别开始和结束的位置所以可以不包含单引号和双引号,无需使用\来转义。
提示:常规字符串也可以横跨多行,只要在行尾加上反斜杠。例如,你如果编写如下代码:
print("hello world")
会打印hello world
1.5原始字符串
原始字符串不以特殊方式处理反斜杠,因此在某些情况下很适用。
在常规字符串中反斜具有特殊功能,它能够让你在字符串中包含原本无法包含的字符,这样通常挺好,但是有些情况下可能会有问题。例如:
我这里想要的是c:\windows\new,但是打印出来的显而易见不是我想要的,当然也可以再使用一个反斜杠来对之前的斜杠进行转义,但是很长的路径怎么办?在这样的情况下原始字符串就派上了用场,因为它们根本不会对反斜杠做特殊处理,而是让字符串都保持原样
原始字符串用前缀r表示(上图),貌似在原始字符串找那个可以包含任何字符,额。。大概是对的,有一个例外,引号需要像通常那样进行转义,但是用于执行转义的反斜杠也将包含在最终的字符串中(如下图),另外,原始字符号串不能以单个反斜杠结尾,除非你对它进行转义,但是和下图一样用于转义的反斜杠也会显示出来,如果未进行转义,python将无法判断字符串是否到此结束。
一个遗留问题,上面说一个字符串结尾无法用反斜杠,但是非要用的话可以采用如下方式,这种方式也算是拼接,仅当你输入两个字符串时,这种机制才管用
这里只说下字符串,具体的字符串方法将会在之后说明
原文地址:https://blog.51cto.com/12020040/2426763