文科生学Python系列2:字符串和列表的操作www.jianshu.com
1,什么是字符串?
字符串就是若干个字符的序列。我的理解是“football” 中的每一个字母是字符,整个单词在 Python 中就是字符串。
用上课老师的例子,我自己打开 Python IDLE 试着运行如下图。在 Python 中要表达一个字符串的输出,小白开始是需要两步才能表达正确的。首先要把输出值先赋值给一个替身,此处替身是“sport”,然后通过输出替身来表达“football”这个真身~
小白表示,现在不太了解为什么要像一个害羞的女孩子那样婉转曲折,不过开始的重新赋值,可能是为了后面干大事更加方便?按照目前的脑洞,只能这么解释了。。。Python中表达“football”
2,字符串的索引
和现实世界不一样,在 Python 中,索引是从 0 开始,而不是从 1 开始的。在索引的过程中,是用 [ ] 这样的方括号来获取字符串里面的单个或者多个字符。
多个字符的获取,是用 a:b 的形式,但是获取的内容是不包括 b 的。
还是拿 football 为例,蓝色输出的为运行结果,第一个例子就是单个字符的索引,第二个是多个字符的索引。还是一样的套路,先赋值给替身“sport”,然后一层一层关系,赋值替身“letter”,让 letter 再从上一级关系中找到目标中的序列排在“1”位置的那个字符:Python 中索引字符串的 d
老师在课堂上讲了一个例子:一个列表可以存储不同的数据类型。运行之后,和输入的内容一毛一样,我不是很懂。。。
3,列表的分割
拿一家人的身高来做例子。我们要在一串码中找到爸爸的身高,就需要先找到爸爸的身高所对应的位置了。要记得,不是从 1 开始数起,而是0 哦!
而要找到女儿的身高呢,在 7 这个位置,从后面开始数起,是 -1. 所以不光是可从前面开始数起,也是可以从后面开始数起的。
下图是运行结果,红色字为错误提示。因为 fam 是没有被定义的,所以这一板一眼的程序是不会私下给关系帮你找到正确的路径的。第一个蓝色 1.78 是爸爸的身高,后面两个蓝色的 1.6 都是女儿的身高。Python 中查找爸爸的身高
列表的切片操作,格式是 [ 始索引:终索引 ] ,这个前面字符串索引一样,包括始索引,不包括终索引。
注意下图下面那个例子中,[:4] 代表的是从 0 位开始到 4 位的前一位,也就是 0-3 的内容。
这个运行结果的前提是前面已经定义好了 fam_height 了,所以索引这个值的时候是可以查询到的。Python 中列表切片操作
4. 列表的操作:改变/增加/删除/查找 某个元素对应的位置Python 中列表的操作
1)修改女儿的身高,用位置 7 或者 -1 索引到这个位置,然后重新赋值,再输出这个家庭的身高 "fam_height" 时,就是修改的结果了,变成了 1.68。
2)添加是用“+”连接两个列表的。增加上图绿色 “second_son” 的身高 0.51,列表用方括号 [ ] 围起来,字符用‘ ’ 单引号围起来,数字不需要单引号。然后重新输出一家人的身高,就有了“second_son” 的数值了。
3)删除,用 del 命令语句。
4)查找。以上都是通过索引来找到元素,其实也是可以通过元素来找到索引的。比如我知道 1.77 这个数值,想要找到这个数值相应的位置。
上图红色字是我记错爸爸的身高是 1.78 而不是 1.77 了,所以程序找不到相应的位置,红色出错报警了。后来输入妈妈的身高 1.68,找到相应的位置。