字符串理论:
在程序界,字符串是程序里的一串字母组合;而在Python中,如果想用变量来保存一个字符串,可以使用普通的等号“=”进行赋值。跟把数值赋给变量不同,对于字符串,需要先用单引号(‘’)将字符串括起来,然后再给变量赋值,如下所示:
book_name='PRogramming Raspberry Pi'如果你想看到变量的内容,可以直接在Python Shell中输入变量名,也可以使用print命令:
>>> book_name'Programming Raspberry Pi'>>> print(book_name)Programming Raspberry Pi>>>这两种不同的方法输出的结果有一些细微的差别。如果只是输入变量名,Python会在输出结果两端加上单引号,以表明输出的结果是一段字符串。如果使用print命令,Python只会输出一个值。
可以使用双引号来定义一个字符串,但是出于惯例,最好使用单引号。
如果想知道字符串里有多少个字符,也可以采用这种方法:
>>> len(book_name)24也可以获取字符串中指定位置的字符:
>>> book_name[1]'r'这里有两点需要强调:首先,对于这类表示数组下标的参数,要使用方括号而不是圆括号;其次,位置是从0开始的,而不是从1开始,如果想要获取这段字符串的首字母,需要输入以下代码:
>>> book_name[0]'P'如果输入数字太大,超过了字符串的长度,可能会显示这样的结果:
>>> book_name[100]Traceback (most recent call last): File "<pyshell#67>", line 1, in <module> book_name[100]IndexError: string index out of range这其实是一个报错信息,Python告诉我们:肯定在某些环节出问题了。更确切地说,信息中的“string index out of range”表示:我们尝试了一些实现不了的事情。在这个例子中,只有24个字母的字符串是不可能有第100个字母的。
不仅如此,还可以在一段比较长的字符串中截取一部分比较短的字符串:
>>> book_name[0:11]'Programming'方括号内的第一个数字是截取字符串的开始位置,但是第二个数字并不像你想象中的那样代表结尾位置,而是把最后的一个字符的位置顺延一位。
接着把“raspberry”这个单词从词条截取出来。如果不确定括号中的第二个数应该是多少,代码就自动默认为延续到这个字符串最后。
>>> book_name[12:]'Raspberry Pi'同样的,如果不确定第一位数应该定到哪里,代码也会默认到0位,即首位。
最后,还可以用加号“+”把字符串加在一起:
>>> book_name + ' by Simon Monk''Programming Raspberry Pi by Simon Monk'新闻热点
疑难解答