Python小白菜 2018-09-19 23:39:14 字符串,在几乎所有Python程序中都有字符串,它的主要用途就是表示一段文本,比如著名的感叹句“Hello,world!”.
>>>"Hello,world!" 上面两个实例中,第一个使用双引号将字符串括起,第二个使用单引号将字符串括起,两者没有任何差别。但为什么又要同时支持呢?看下面这三个实例: >>>"Let's go!" 上面第一个实例中,字符串内包含了单引号,因此不能再用单引号来括字符串,在这里字符串是‘Let’,Python解释器不知道该如何处理s后面的字符,如果还是跟第二个实例那样使用单引号括起整个字符串,Python解释器会报错。第三个实例,字符串内包含了双引号,因此必须使用单引号括起全部字符串。 如果一定要用单引号来括整个字符串,可以用反斜杠 对引号进行转义: >>> 'Let's go!' 这样Python解释器就知道中间的单引号也是字符串的一部分,同样,双引号也可以用同样的方法处理: >>> ""hello,world!" she said"
>>> "Let's go" '"hello,world!"' 连续输入两个字符串,Python解释器会自动把它们拼接起来,合并为一个字符串。这种拼接字符串的方式并非常用。正常拼接将两段相加就可以了 >>> "Hello," + "world!"
>>> "Hello,world!" 第一个实例是用引号括起的,Python解释器在打印时,保留了在代码中的样子,所以使用print()所打印出的结果,才是真正展现给用户的效果。 两种不同的方式将值转换成字符串,可以通过使用str()和repr() 函数直接使用这两种方式,通过下面两个实例观察两者的不同: >>> print(repr("Hello, world!"))
1、长字符串 要表示跨越多行的字符串,可以使用三引号''' ... '''或三个双引号""" ... """,这让Python解释器能够识别表示字符串开始和结束的位置,字符串本身包含的单引号和双引号,不用使用反斜杠进行转义。 >>> print('''This is a very long string. 除长字符串外,常规的短字符串也可以跨行,在行尾加反斜杠即可,这种处理方式也适用于表达式和语句。 >>> print("hello, 2、原始字符串 在原始字符串中不会对反斜杠进行处理,效果跟repr()函数类似,在常规字符串中,使用反斜杠可以让字符串包含原本无法的字符,比如上面已经出现的一个实例: >>> print('Hello, world') 通常情况下是可以的,但是在有些特殊情况,就不行了,比如字符串中包含了路径C: owfile >>> print('C: ewfile') 通常使用反斜杠 对反斜杠进行转义就行,但如果是一个很长的路径就需要大量的反斜杠,这种情况下,就可以使用原始字符进行处理,让字符串的每个字符保持原样。 >>> print(r'C: ewfile') 通过上面俩实例能看出来,原始字符串用r''表示' '这对单引号内的字符串,不进行转义。 >>> print(r'Let's go') 还有需要注意的是原始字符串不能以反斜杠结尾,因为Python解释器无法判断字符串是否到此结束 >>> print(r'This is illegal') 但如果最后一个字符必须是反斜杠,这可以这样处理: >>> print(r'C:Program Filesooar' '\') 字符串这节太枯燥了,大体理解的差不多了,关于字符编码,先不看了。 后面要是能用到再补上。 参考书籍《Python基础教程(第三版)》 |
|