08 列表字典操作

列表和for循环
遍历:从头到尾,一次取出列表的每个元素,方式非常多:while循环 for循环 迭代器
     for循环是专门用于实现遍历的一种语法
格式:for 变量名 in 列表:

for循环的逻辑:
1.先进行条件判断,按照顺序,能否从列表中取出元素,每次取一个
2.如果能取出,则将该元素赋值给指定的变量,然后进行循环体,循环执行完,再回来进行条件判断
3.如果取不出元素,则会跳出循环,向后执行
list1 = [1,2,3,4,5,6]
for i in list1:
    if i == 4:
        break  #break直接结束循环
    print(i)#>>>1   2   3

修改,增加,删除
修改列表元素 格式:列表名[索引] = 更改的元素
list2 = ['py','c','hello']
list2[2] = 'w'
print(list2)#>>>['py', 'c', 'w']
添加元素 格式:列表.append('新元素')
list2.append('hi')
print(list2)#>>>['py', 'c', 'hello', 'hi']
删除元素 格式:列表.remove('删除的元素')
list2.remove('c')
print(list2)#>>>['py', 'hello']

列表切片,与字符串列表类似
list3 = [1,2,3,4,5,6]
list4 = list3[0:3]#还是前取后不取
print(list4)#>>>[1, 2, 3]

元组  
元组与列表类似,但是不可以修改数据

tuple = (10,'hello',1.5,True)
print(tuple) #>>>(10, 'hello', 1.5, True)

for data in tuple:
    print(data)#>>>10    hello    1.5     True
#当元组只有一个元素时.解释器会使用该元素的类型,而不是元组类型
#想要保留元组类型需要在元素后加逗号
tuple1 = (10.1)
print(type(tuple1))#>>>><class 'float'>
tuple2 = (10.1,)
print(type(tuple2))#>>>> <class 'tuple'>

可以将列表转换为元组,防止数据被修改
list1 = [10,20,30]
tuple3 = tuple(list1)
print(tuple3)#>>>(10, 20, 30)
将元组转为列表
list2 = list(tuple3)#>>>[10, 20, 30]
print(list2)

字典
字典是以键值对的方式来储存数据,类似{'name':'zs','age':20}
键key是索引,值value是数据,键和值之间用:分隔,值可以取任何数据类型,值只能用字符串.数字,元组,键是唯一的
字典是无序的
dict1 = {'name':'张三','age':18,'height':1.7}
print(dict1)#>>>{'name': '张三', 'age': 18, 'height': 1.7}

增加/修改数据
字典[键] = 值
dict1['weight'] = 70  #键不存在则增加键值对   {'name': '张三', 'age': 18, 'height': 1.7, 'weight': 70}
dict1['name'] = '李四' #键存在,则修改键值对的值  {'name': '李四', 'age': 18, 'height': 1.7, 'weight': 70}
print(dict1)

删除数据
字典.pop(键) 根据键删除指定的键值对
data = dict1.pop('name')#该方法会返回 删除的键值对的值   >>>>张三
data = dict1.pop('gender')#键不存在,默认会报错   >>>报错
print(data)
data = dict1.pop('gender','nokey')#字典.pop(键,默认值) 当键不存在时,如果设置了默认值,则不报错,并返回默认值
print(dict1) #>>>{'name': '张三', 'age': 18, 'height': 1.7}
print(data) #>>>nokey

查询数据
字典[键]  根据键取出值
print(dict1['name']) #>>>张三
print(dict1['nnnn']) #>>键不存在,会报错
字典.get(键) 根据键取出值
data = dict1.get('name')
data1 = dict1.get('nnnn')
print(data) #>>>张三
print(data1) #>>>None   键不存在.返回None

遍历字典.取出的是键
for key in dict1:
    print(key) #>>>>name    age     height
    print((dict1[key]))#>>>>18    height      1.7

操作     列表 list                     字典 dict

       append                   dict1[] =

       remove                        pop

    list1[索引] =              dict1[] =

   list1[索引] for循环        dict1[]/get for循环

 

  

猜你喜欢

转载自www.cnblogs.com/guozhihao/p/12797085.html
08