首先解释单引号与双引号的区别,两者都可以用来表示字符串,区别其实不大。但是双引号内可以包含着单引号,而单引号内虽然也可以包含单引号,但是必须加上转移字符"\"。比如说:
str = "It's Python"
str1 = 'It\'s Python'
那么喜欢思考的朋友就会想,那单引号内能不能包含双引号呢?答案是可以的:
str2 = 'This is "Python"'
str3 = "This is 'Python'"
也就是说,单引号内能包含双引号,双引号内能包含单引号。但若要单引号内存在单引号,双引号内存在双引号,则需要加上转移字符。
然后就到下个知识点啦,众所周知,字符串内若存在特殊字符,则需要在其前面加上转义字符,附转义字符表(百度来的):
符 号 | 说 明 |
\' | 单引号 |
\" | 双引号 |
\a | 发出系统响铃声 |
\b | 退格符 |
\n | 换行符 |
\t | 横向制表符 |
\v | 纵向制表符 |
\r | 回车符 |
\f | 换页符 |
\o | 八进制数代表的字符 |
\x | 十六进制数代表的字符 |
\000 | 终止符,\000后的字符串全部忽略 |
但是有些时候,我们的字符串内有过多的字符串需要转义,如果全部都加上转义字符的话,会显得很混乱,这个时候就要在在字符串前面加上 “r” ,使其变成raw字符串了,比如:
str5 = r"\(~_~)/"
print str5
输出值为:
而在这种情况下,我们要怎么进行换行呢,别急,Python还有一个更好用的东西,叫做多行字符串,下面是示例(如果代码中有中文,请在代码的第一行加上编码注释,不然会报错,字符串前加u,表示字符串为中文):
# -*- coding: utf-8 -*-
str6 =ur'''这是第一行
现在换行,变成第二行啦
我是第三行'''
print str6
输出值为:
也就是你在代码中直接回车键换行,输出时也会跟着换行。
以上就是Python中字符串的些许笔记,如果有误,欢迎纠正。