列表,元组和字典

一· 列表

1.创建列表:

name_list = ['hello', 'seven', 'eric'] 常用
或
name_list = list(['hello', 'seven', 'eric'])

2.添加(在原来列表后面上添加)

li.append("alex")

3.清空列表

li.clear()

4.拷贝(浅拷贝)

v = li.copy()        ##只是添加了一个指针指向li指向的内存,当修改了一个变量的值,另一个也会受影响。(v==li 深拷贝,修改一个变量的值,另一个不会受影响)

5.计算元素出现的次数

 v = li.count(22)

6.扩展原列表

li.append([9898,"不得了"]) ##列表里可以嵌套列表

7.添加列表元素

li.extend([9898,"不得了"]) #列表里的元素合并到li中

8.根据值获取当前值索引位置(左边优先)

li = [11, 22, 33, 22, 44]
v= li.index(22)

9.在指定索引位置插入元素

li.insert(0,99)

10.删除某个值(1.指定索引;2. 默认最后一个),并获取删除的值

v = li.pop()
v = li.pop(1)

11. 删除列表中的指定值,左边优先

li.remove(22)

12. 将当前列表进行翻转

 li.reverse()

13. 列表的排序

li.sort()               #正向排序
li.sort(reverse=True)  #逆向排序

14.切片,切片结果也是列表

li1 = li[3:-1]

15.for循环把数组中的元素遍历出来

for item in li:
    print(item)

16.修改

li[1] = 120
li[1:3] = [120,90] #后面列表中的元素个数必须与列表切片中的元素个数一致,否则会报错

17.del不仅可以删除列表中的元素,还可以删除整个列表

del li
del li[1]

18. in操作 判断一个元素是否在列表中

v1 = "石振文" in li

19. 字符串转成列表

li =  list("asdfasdfasdf"), 内部使用for循环实现,转换后一个字符就是列表中的一个元素

20. 列表转字符串(需要自己写for循环一个一个处理)

for i in li:
    s = s + str(i)              或者      v = "".join(li)#效率最高

二· 元组

元素不可被修改,不能被增加或者删除

1.创建元组

tu = (111,"alex",(11,22),[(33,44)],True,33,44,)

2. 索引

v = tu[0]

3. 切片

v = tu[0:2]

4.可以被for循环,可迭代对象

for item in tu:
     print(item)

5. 转换

s = "asdfasdf0"
li = ["asdf","asdfasdf"]
tu = ("asdf","asdf")

v = tuple(s)
v = tuple(li)

v = list(tu)
v = "_".join(tu)

li = ["asdf","asdfasdf"]
li.extend((11,22,33,))

 6.元组的一级元素不可修改/删除/增加

三· 字典

1.创建字典

dic = {   
     "k1": 'v1',
     "k2": 'v2'}  常用方式

创建字典,并指定统一的值
v = dict.fromkeys(["k1",123,"999"],123)

2 根据Key获取值,key不存在时,可以指定默认值(None)

v = dic['k11111']
v = dic.get('k1',111111)

3 删除并获取值

v = dic.pop('k1',90)
k,v = dic.popitem()

4 设置值,
  已存在,不设置,获取当前key对应的值
  不存在,设置,获取当前key对应的值

v = dic.setdefault('k1111','123')

5 更新

dic.update({'k1': '111111','k3': 123})
dic.update(k1=123,k3=345,k5="asdf")

6 布尔值(1,0)、列表、字典不能作为字典的key 都不是可迭代对象

原文地址:https://www.cnblogs.com/ithome0222/p/8626143.html