前言,再识字符串
字符串是我们学习python编程第一眼见到的东西,一行print(“hello world”)可谓是太亲切了,但在此之前我们对字符串的认知也仅局限于如何用单引号、双引号、三引号去定义字符串并打印,今天开始我们就更深入地去理解一下字符串
一,什么是字符串
认识字符串之前首先你要明白什么是字符?
这样记住它:字符是你能在键盘上按出来的任意一个符号,比如’a’, ‘B’, ‘*’, ‘@’, ‘&’等等,你能发现我举的这些例子有什么共同点吗?
答:它们都是单引号包围一个符号的形式,除了python还有很多编程语言,但几乎无一例外地都将这样的形式称作字符
而字符串和字符的区别主要就是符号的数量差异,会习惯将多个字符凑在一起称作字符串,就好像烤串似的,把字符串起来
但这么说并不意味着你一个字符(例如”a”或”*”这样的)不能叫字符串,不能产生这样的固性思维,毕竟所谓的定义只是为了方便人类更好的进行学习和认知
事实上,就算是一个符号都没有,也能把它叫作字符串,例如空字符串’’或””或””””””,有时候会习惯简称为空串,是不是和空列表[]类似的存在?
二,字符串的字面量以及变量
此前已经学习过字符串的字面量,简单复习一下,字符串有三种形式:单引号字符串、双引号字符串、三引号字符串
- 当你用3种形式的引号包围起符号之后,我们称之为一个字符串的字面量
- 当你把一个字符串的字面量赋值给一个变量之后,我们称这个变量为字符串的变量
- 当你给一个变量赋值为一对引号但引号没有包围任何符号时,我们称这个字符串为空字符串,简称空串
*小练习,根据以上定义,再类别列表的定义,尝试写出字符串的字面量、变量、空串
答案如下:(这里演示的代码统一用了双引号的形式,你也可以选择单引号,三引号则不常用)
三,字符串的下标(索引)
学习完列表后,相信你对列表的正向索引、反向索引已经不陌生,事实上字符串也完全是这样操作的
*小练习,通过正向索引和反向索引将字符串”python”的每个符号打印出来
四,字符串的拼接
python的字符串有一个十分方便的功能,可以使用+号来将字符串拼接,使得原字符串更长
下图演示了拼接”python” 和”good”这两个字符串的操作
#小练习:外星人入侵了地球,攻击了地球能源总站,必须获得密码重启机器!
#超人们从世界各地收集到了密码的四部分,但它们似乎被加密过?
#聪明的你一下就看破了其中的加密,按照以下步骤,破解密码,拯救地球!
a = ",uoy"
b = ",evas"
c = ",eht"
d = "!dlrow"
#①将密码的四部分按变量名字的字母序:大在前小在后进行拼接,拼接结果存放在变量e中
#②使用反向索引,将完整密码的每个字符打印,一共19个字符,反向索引该从哪到哪呢?
#③成功解密,你知道密码翻译成中文的意思吗?