Day08 学习小结

可变和不可变

可变和不可变是针对数据类型而言的

  1. 可变:值变了,地址也变了,说明原来的地址不能存储新的值
    1. 数字类型
    2. 字符串类型
    3. 元组类型(只读列表,元组中元素不可修改)
  2. 不可变:值变了,地址没变,说明原来的地址可以存储新的值
    1. 列表类型
    2. 字典类型

列表内置方法

只能给列表用。

  1. 索引取值/索引修改值

    lt = [1, 2, 3]
    lt[0] = 2
    print(lt) #[2, 2, 3]
  2. 索引切片

    lt = [1, 2, 3]
    print(lt[0:1]) # (左闭右开)(0到1,步长默认为1)
    # [2]
  3. 成员运算:in / not in

    lt = [1, 2, 3]
    print(2 in lt)  # True
    print(2 not in lt) # False      
    # 返回true(×)--》 返回True
  4. for循环

    lt = [1, 2, 3]
    for i in lt:
       print(i)
    '''
    1
    2
    3
    '''
  5. 长度:len()

    lt = [1, 2, 3]
    print(len(lt)) # 3
  6. 追加值:append()

    lt = [1, 2, 3]
    lt.append(4)
    print(lt) # [1, 2, 3, 4]
  7. 排序:sort()

    lt = [2, 3, 1]
    lt.sort()
    print(lt) # [1, 2, 3]
    
    lt = ['pa', 'bcnzhuren', 'asdf', 'sdfffffffffffffffffffffffffffff']  # 按照首字母的拼音顺序
    lt.sort()  # i相当于列表里的每一个元素,
    # lt.sort(key=lambda i: i[1])  # i相当于列表里的每一个元素,
    print(lt) # ['asdf', 'bcnzhuren', 'pa', 'sdfffffffffffffffffffffffffffff']
  8. 反转:reverse()

    lt = [1, 2, 3]
    lt.reverse()
    print(lt) # [3, 2, 1]
  9. 获取元素索引:index()

    lt = [1, 2, 3]
    print(lt.index(2)) # 1
  10. 清空列表:clear()

    lt = [1, 2, 3]
    lt.clear()
    print(lt) # []
  11. 复制:copy()

    lt = [1, 2, 3]
    lt1 = lt.copy()
    print(lt1) # [1, 2, 3]
  12. 扩展列表:extend()

    lt1 = [1, 2, 3]
    lt2 = [1, 5, 6]
    lt1.extend(lt2)  # 只能加列表
    print(lt1) # [1, 2, 3, 1, 5, 6]
  13. 移除:remove()

    lt = [1, 2, 3]
    lt.remove(3) # 括号里为要移除的值
    print(lt) # [1, 2]
  14. 按照索引值插入:insert()

    lt = [1, 2, 3]
    lt.insert(0, 1.5)  # 在前面插入  0表示索引,1.5插入的值
    print(lt) # [1.5, 1, 2, 3]

字典内置方法

只能字典用。

  1. 按key取值/按key修改值/按key增加值

    dic = {'a':1,'b':2,'c':3,'d':['唱','跳','rap','篮球']}
    
    print(dic['d']) # ['唱', '跳', 'rap', '篮球']
    
    dic['a'] = dic['a'] + 6
    print(dic['a']) # 7
    
    dic['w'] = 696969
    print(dic) # {'a': 7, 'b': 2, 'c': 3, 'd': ['唱', '跳', 'rap', '篮球'],'w': 696969}
  2. 成员运算(比较的是key)

    dic = {'a':1,'b':2,'c':3,'d':['唱','跳','rap','篮球']}
    print('a' in dic) # True
  3. for循环(对key循环)

    dic = {'a':1,'b':2,'c':3,'d':['唱','跳','rap','篮球']}
    for i in dic:
        print(i)  
    '''
    a
    b
    c
    d
    '''
  4. keys()/values()/items()

    dic = {'a':1,'b':2,'c':3,'d':['唱','跳','rap','篮球']}
    print(dic.keys())  # 所有的key
    print(dic.values())  # 所有的值
    print(dic.items())  # 所有的键值对(以列表存储)(元组)
    '''
    dict_keys(['a', 'b', 'c', 'd])
    dict_values([7, 2, 3, ['唱', '跳', 'rap', '篮球']])
    dict_items([('a', 7), ('b', 2), ('c', 3), ('d', ['唱', '跳', 'rap', '篮球'])])
    '''
    for i in dic.items():
        print(str(i[0]) + '***' + str(i[1]))  # i里面就两个元素
    '''
    a***7
    b***2
    c***3
    d***['唱', '跳', 'rap', '篮球']
    '''    
  5. 取值:get()

    dic = {'a':1,'b':2,'c':3,'d':['唱','跳','rap','篮球']}
    print(dic['b'])  # 2
    print(dic.get('b', 2)) # 2 (找到了就找了;没有值返回None,如果给定了2,没有找到就2)
  6. 扩展字典:update()

    dic1 = {'a':1}
    dic2 = {'b':2}
    dic1.update(dic2)
    print(dic1)
    # {'a': 1, 'b': 2}
  7. 更改,有则不更改,没有则增加:setdefault()

    dic1 = {'a': 1}
    dic1.setdefault('a', 2)
    print(dic1)
    # {'a': 1}

猜你喜欢

转载自www.cnblogs.com/bowendown/p/11436780.html