第三章 列表、元组、字典、字符串的操作

本章重点:

1、熟练掌握列表、字典的增删该查循环功能,总结出两者的区别

2、元组的定义和基本功能

3、字符串的常见用法

一、列表,是我们以后最常用的数据类型之一,功能有增加、修改、删除、查询、切片、循环、排序

1、定义:name=["suly","zoe","mark",1,2,3,,4,5,6] ,从左往右索引值分别为0,1,2,3,4……  ,从右往左分别为-1,-2,-3,-4……

     定义一个空列表: name=[]

2、增加:(1)增加到最后name.append()

                 (2)插入到对应索引值的位置name.insert(1,"marry")

3、修改:(1)索引值为1的元素修改成“lily”:name[1]="lily"

                 (2)批量修改,索引值2到4的元素分别修改为“s”,"a","s",5和6的位置直接插入“l”,"y:name[2:5]="sasly"     ;注意顾头不顾尾

4、删除:(1)批量删除索引值2到5的元素,注意5不删除,del name[2:5]

                 (2)删除最后一个元素并返回其值:name.pop()

                 (3)删除指定元素“lily":”name.remove("lily")

5、查询:(1)查询Lily的索引值:name.index("Lily")

                 (2)查询元素4的个数:name .count(4)

6、循环:

(1)for i in name:

               print(i)

(2)for index,i in enumerate (name):

                  print(index,i)

7、切片:将索引值2到4的元素切出来组成新列表name1=name[2:5]注意顾头不顾尾

(1)从头开始切name[0:5];name[:5]

(2)从第5个切到最后一个:name[5:]   ;从倒数第5个切到最后一个:name[-5:]

8、排序:

(1)name.sort()    

(2)name.reverse()    反转,顺序掉换    

 9、复制:name1=name.copy()

(1)浅copy,只有第一层独立。

(2)深copy,完全独立: import copy 

                            name1=copy.deepcopy(name)

10、获取列表长度:len(name)

11、拼接:name1+name2      或者把name2加到name1:name1.extend(name2)

12、清空列表:name.clear()

二、元组=只读列表,不可修改,所以功能只有查询和统计。

三、字符串:有序、不可变

isdigit,replace,find,count,strip,center,split,format,join.

四、hash函数:输入任意长度,通过散列算法,将值变换成固定长度输出。被hash的值必须固定。

    数字、元祖、字符串都不可变,所以可hash。列表不可hash。

五、字典:

1、定义:info={"key1":"value1"," key2":"value2","key3":"value3"……}其中key值不可变,且不能重复,可hash。也有增加、删除、修改、查询、循环功能。

2、字典的特点:(1)无序(2)查找速度快(3)可存放任意多个值

3、增加:info["key4"]="value4"

2、删除:

(1)删除并返回其值:info.pop("key1")

(2)info.popitem()随机删除

(3)del info["key1"]

3、修改:info["key1]="suly"

4、查询:

5、打印所有key值:info.keys;   打印所有value值:info.values

(1)“key1”in info:

(2)info.get(“key1”),获取key1的值,没有就返回none

(3)info["key1"],查找key1的值,没有就报错

5、循环

for index,i in enumerate(info):

    print(index,i)

6、字典转列表:info.items()

7、合并:info.update(info1)  把info1合并到info里,key值一样的就覆盖

8、info.setdefault("key2","value2"),有key2就查找,没有就新建一个key2,其值为value2

9、批量生成key:info.fromkeys(["a","b","c"])

 

                      

 

posted @ 2018-06-02 23:56  专属公主  阅读(170)  评论(0编辑  收藏  举报