Python 学习笔记(八)Python列表(三)

序列

序列:数学上,序列是被排成一列的对象(或事件);这样,每个元素不是在器他元素之前,就是在其他元素之后。这里元素之间的顺序非常重要。《维基百科》

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

Python有6个序列的内置类型,但最常见的是列表和元组。

序列都可以进行的操作包括索引,切片,加,乘,检查成员。

Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

列表和字符串的比较

1、列表可修改,字符串不可修改

2、字符串和列表都是序列

3、列表可原地修改

4、列表有多维列表,而字符串没有

5、字符串是不可改变的,列表可进行原地修改

 1 >>> a=[1,2,3]
 2 >>> id(a)
 3 46281096L
 4 >>> a.append(4)  #追加一个元素,如果没有返回值,这就是原地修改的一种外在表现
 5 >>> a
 6 [1, 2, 3, 4]
 7 >>> id(a)  #追加之后,列表在内存中的位置并没有改变
 8 46281096L
 9 >>> a[1]=9  #列表也可以这样修改,将索引位置为1的元素修改为9,列表可修改的特性
10 >>> a
11 [1, 9, 3, 4]
12 >>> b="python"
13 >>> b[1]="w"   #用在字符串当中报错,字符串不支持修改
14 Traceback (most recent call last):
15   File "<stdin>", line 1, in <module>
16 TypeError: 'str' object does not support item assignment23 >>> b[0]+"w"+b[2:]  #如果某种业务需要字符串修改,可以这样,但这种修改其实是又生成了一个字符串,而原来字符串并没有发生变化
24 'pwthon'
25 >>> b   #实际b字符串并没有发生变化
26 'python'
27 >>> a
28 [1, 9, 3, 4]  #一维列表
29 >>> m =[[1,2,3],[4,5,6],[7,8,9]] #多维列表
30 >>> m[1]
31 [4, 5, 6]
32 >>> m[1][0] 
33 4
34 >>>

list() 与str()  列表与字符串之间的转化

 1 >>> b="python"
 2 >>> b
 3 'python'
 4 >>> list(b)  #字符串转换为列表
 5 ['p', 'y', 't', 'h', 'o', 'n']
 6 >>> a ="www.baidu.com"
 7 >>> a.split(".") #字符串使用分隔符点号.分割成列表
 8 ['www', 'baidu', 'com']
 9 >>> c =list(b)
10 >>> c
11 ['p', 'y', 't', 'h', 'o', 'n']
12 >>> "".join(c)  #再用join函数将列表c用空连接起来,转换为字符串
13 'python'
14 >>> "-".join(c) #用join函数将列表c用减号连接起来
15 'p-y-t-h-o-n'

 

posted @ 2018-03-12 23:37  冰雪柔情的天空  阅读(204)  评论(0编辑  收藏  举报