zoukankan      html  css  js  c++  java
  • 2019.08.05学习整理

    2019.08.05学习整理

    列表类型内置方法(list)

    1.用途:多个装备、多个爱好、多门课程,甚至是多个女朋友

    2.定义:[]内可以有多个任意类型的值,逗号分隔元素

    3.常用操作+内置方法:常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)、其他操作(了解)三个部分。

    3.1优先掌握

    1. 按索引取值(正向取值+反向取值),即可存也可以取
    2. 切片
    3. 长度len
    4. 成员运算in和not in
    5. 追加append
    6. 删除del
    7. 循环

    1.按索引取值(正向取值+反向取值),即可存也可以取

    # list之索引取值
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list[0] = 'nick handsom'
    # name_list[1000] = 'tank sb'  # 报错
    
    print(f"name_list[0]: {name_list[0]}")
    

    name_list[0]: nick handsom

    2.切片

    # list之切片
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list[0:3:2]: {name_list[0:3:2]}")
    
    

    name_list[0:3:2]: ['nick', 'tank']

    3.长度

    # list之长度
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"len(name_list): {len(name_list)}")
    

    len(name_list): 4

    4.成员运算in和not in

    # list之成员运算in和not in
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"'tank sb' in name_list: {'tank sb' in name_list}")
    print(f"'nick handsome' not in name_list: {'nick handsome' not in name_list}")
    

    'tank sb' in name_list: False
    'nick handsome' not in name_list: True

    5.追加值

    # list之追加值
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list.append('tank sb')
    
    print(f"name_list: {name_list}")
    

    name_list: ['nick', 'jason', 'tank', 'sean', 'tank sb']

    6.删除

    # list之删除
    name_list = ['nick', 'jason', 'tank', 'sean']
    del name_list[2]
    
    print(f"name_list: {name_list}")
    

    name_list: ['nick', 'jason', 'sean']

    7.循环

    # list之循环
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    for name in name_list:
        print(name)
    

    nick
    jason
    tank
    sean

    3.2需要掌握

    1. insert
    2. pop
    3. remove
    4. count
    5. index
    6. clear
    7. copy
    8. extend
    9. reverse
    10. sort

    1.insert()

    # list之insert()
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list.insert(1, 'handsome')
    
    print(f"name_list: {name_list}")
    

    name_list: ['nick', 'handsome', 'jason', 'tank', 'sean']

    2.pop()

    # list之pop(),pop()默认删除最后一个元素
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list.pop(1): {name_list.pop(1)}")
    print(f"name_list: {name_list}")
    

    name_list.pop(1): jason
    name_list: ['nick', 'tank', 'sean']

    3.remove()

    # list之remove()
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list.remove('nick'): {name_list.remove('nick')}")
    print(f"name_list: {name_list}")
    
    

    name_list.remove('nick'): None
    name_list: ['jason', 'tank', 'sean']

    4.count()

    # list之count()
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list.count('nick'): {name_list.count('nick')}")
    

    name_list.count('nick'): 1

    5.index()

    # list之index()
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list.index('nick'): {name_list.index('nick')}")
    

    name_list.index('nick'): 0

    6.clear()

    # list之clear()
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list.clear()
    
    print(f"name_list: {name_list}")
    

    name_list: []

    7.copy()

    # list之copy()
    name_list = ['nick', 'jason', 'tank', 'sean']
    
    print(f"name_list.copy(): {name_list.copy()}")
    name_list.copy(): ['nick', 'jason', 'tank', 'sean']
    

    8.extend()

    # list之extend()
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list2 = ['nick handsome']
    name_list.extend(name_list2)
    
    print(f"name_list: {name_list}")
    

    name_list: ['nick', 'jason', 'tank', 'sean', 'nick handsome']

    9.reverse()

    # list之reverse()
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list.reverse()
    
    print(f"name_list: {name_list}")
    

    name_list: ['sean', 'tank', 'jason', 'nick']

    10.sort()

    # list之sort(),使用sort列表的元素必须是同类型的
    name_list = ['nick', 'jason', 'tank', 'sean']
    name_list.sort()
    
    print(f"name_list: {name_list}")
    
    name_list.sort(reverse=True)
    print(f"name_list_reverse: {name_list}")
    

    name_list: ['jason', 'nick', 'sean', 'tank']
    name_list_reverse: ['tank', 'sean', 'nick', 'jason']

    4.存一个值or多个值:多个值

    5.有序or无序:有序

    6.可变or不可变:可变数据类型

    元组类型内置方法(tuple)

    1.用途:多个装备、多个爱好、多门课程,甚至是多个女朋友

    2.定义:在()内可以有多个任意类型的值,逗号分隔元素

    3.常用操作+内置方法:常用操作和内置方法:

    3.1优先掌握

    1. 索引取值
    2. 切片(顾头不顾尾,步长)
    3. 长度len
    4. 成员运算in和not in
    5. 循环
    6. count
    7. index

    1.索引取值

    # tuple之索引取值
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    # name_tuple[0] = 'nick handsom'  # 报错
    
    print(f"name_tuple[0]: {name_tuple[0]}")
    

    name_tuple[0]: nick

    2.切片(顾头不顾尾,步长)

    # tuple之切片
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    print(f"name_tuple[1:3:2]: {name_tuple[1:3:2]}")
    

    name_tuple[1:3:2]: ('jason',)

    3.长度

    # tuple之长度
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    print(f"len(name_tuple): {len(name_tuple)}")
    

    len(name_tuple): 4

    4.成员运算

    # tuple之成员运算
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    print(f"'nick' in name_tuple: {'nick' in name_tuple}")
    

    'nick' in name_tuple: True

    5.循环

    # tuple之循环
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    for name in name_tuple:
        print(name)
    

    nick
    jason
    tank
    sean

    6.count()

    # tuple之count()
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    print(f"name_tuple.count('nick'): {name_tuple.count('nick')}")
    

    name_tuple.count('nick'): 1

    7.index()

    # tuple之index()
    name_tuple = ('nick', 'jason', 'tank', 'sean')
    
    print(f"name_tuple.index('nick'): {name_tuple.index('nick')}")
    

    name_tuple.index('nick'): 0

    4.存一个值or多个值:一个值

    5.有序or无序:有序

    6.可变or不可变:不可变数据类型

    元组和列表的区别

    列表可变的原因是:索引所对应的值的内存地址是可以改变的

    元组不可变得原因是:索引所对应的值的内存地址是不可以改变的,或者反过来说,只要索引对应值的内存地址没有改变,那么元组是始终没有改变的。

    字典类型内置方法(dict)

    1.用途:存多个值,但每一个值都有一个key与之对应,key对值有描述功能。多用于存的值表示的是不同的状态时,例如存的值有姓名、年龄、身高、体重、爱好。

    2.定义:{}内用逗号分隔开多个元素,每一个元素都是key:value的形式,value可以是任意数据类型,而key通常应该是字符串类型,但是key必须为不可变类型。

    3.常用操作+内置方法:常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)两个部分。

    3.1优先掌握

    1. 按key存取值:可存可取
    2. 长度len
    3. 成员运算in和not in
    4. 删除del
    5. 键keys()、值values()、键值对items()
    6. 循环

    1.按key存取值:可存可取

    # dic之按key存取值
    dic = {'a': 1, 'b': 2}
    
    print(f"first dic['a']: {dic['a']}")
    
    dic['a'] = 3
    
    print(f"second dic['a']: {dic['a']}")
    
    

    first dic['a']: 1
    second dic['a']: 3

    2.长度len

    # dic之长度len
    dic = {'a': 1, 'b': 2}
    
    print(f"len(dic): {len(dic)}")
    
    

    len(dic): 2

    3.成员运算in和not in

    # dic之成员运算in和not in
    dic = {'a': 1, 'b': 2}
    
    print(f"'a' in dic: {'a' in dic}")
    print(f"1 in dic: {1 in dic}")
    
    

    'a' in dic: True
    1 in dic: False

    4.删除

    # dic之删除del
    dic = {'a': 1, 'b': 2}
    del dic['a']
    
    print(f"dic.get('a'): {dic.get('a')}")
    
    

    dic.get('a'): None

    # dic之删除pop()
    dic = {'a': 1, 'b': 2}
    dic.pop('a')  # 指定元素删除
    
    print(f"dic.pop('b'): {dic.pop('b')}")
    print(f"dic.get('a'): {dic.get('a')}")
    
    

    dic.pop('b'): 2
    dic.get('a'): None

    # dic之删除popitem()
    dic = {'a': 1, 'b': 2}
    
    print(f"dic.popitem(): {dic.popitem()}")  # popitem() 方法随机返回并删除字典中的一对键和值(一般删除末尾对)。
    
    

    dic.popitem(): ('b', 2)

    5.键keys()、值values()、键值对items()

    # dic之键keys()、值values()、键值对items(),python2中取出的是列表(鸡蛋);python3中取出的是元组(鸡)
    dic = {'a': 1, 'b': 2}
    
    print(f"dic.keys(): {dic.keys()}")
    print(f"dic.values(): {dic.values()}")
    print(f"dic.items(): {dic.items()}")
    
    

    dic.keys(): dict_keys(['a', 'b'])
    dic.values(): dict_values([1, 2])
    dic.items(): dict_items([('a', 1), ('b', 2)])

    6.循环

    # dic之循环
    # dic是无序的,但是python3采用了底层优化算法,所以看起来是有序的,但是python2中的字典是无序
    dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
    
    for k, v in dic.items():  # items可以换成keys()、values()
        print(k, v)
    
    

    a 1
    b 2
    c 3
    d 4

    3.2需要掌握

    1. get
    2. update
    3. fromkeys
    4. setdefault

    1.get()

    # dic之get()
    dic = {'a': 1, 'b': 2}
    
    print(f"dic.get('a'): {dic.get('a')}")
    print(f"dic.get('c'): {dic.get('c')}")
    
    

    dic.get('a'): 1
    dic.get('c'): None

    2.update()

    # dic之update()
    dic1 = {'a': 1, 'b': 2}
    dic2 = {'c': 3}
    dic1.update(dic2)
    
    print(f"dic1: {dic1}")
    
    

    dic1: {'a': 1, 'b': 2, 'c': 3}

    3.fromkeys()

    # dic之fromkeys()
    dic = dict.fromkeys(['name', 'age', 'sex'], None)
    
    print(f"dic: {dic}")
    
    

    dic: {'name': None, 'age': None, 'sex': None}

    4.setdefault()

    # dic之setdefault(),有指定key不会改变值;无指定key则改变值
    dic = {'a': 1, 'b': 2}
    
    print(f"dic.setdefault('a'): {dic.setdefault('a',3)}")
    print(f"dic: {dic}")
    print(f"dic.setdefault('c'): {dic.setdefault('c',3)}")
    print(f"dic: {dic}")
    
    

    dic.setdefault('a'): 1
    dic: {'a': 1, 'b': 2}
    dic.setdefault('c'): 3
    dic: {'a': 1, 'b': 2, 'c': 3}

    4.存一个值or多个值:多个值,值可以是多个类型,key必须是不可变类型,通常应该是不可变类型中的字符串类型

    5.有序or无序:无序

    6.可变or不可变:可变数据类型

    集合类型内置方法

    1.用途:用于关系运算的集合体,由于集合内的元素无序且集合元素不可重复,因此集合可以去重,但是去重后的集合会打乱原来元素的顺序。

    2.定义:{}内用逗号分隔开多个元素,每个元素必须是不可变类型。

    3.常用操作+内置方法:常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)两个部分

    3.1优先掌握

    1. 长度len
    2. 成员运算in和not in
    3. |并集、union
    4. &交集、intersection
    5. -差集、difference
    6. ^对称差集、symmetric_difference
    7. ==
    8. 父集:>、>= 、issuperset
    9. 子集:<、<= 、issubset

    1.长度len

    # set之长度len
    s = {1, 2, 'a'}
    
    print(f"len(s): {len(s)}")
    
    

    len(s): 3

    2.成员运算in和not in

    # set之成员运算in和not in
    s = {1, 2, 'a'}
    
    print(f"1 in s: {1 in s}")
    
    

    1 in s: True

    3.2需要掌握

    1. add
    2. remove
    3. difference_update
    4. discard
    5. isdisjoint

    1.add()

    # set之add()
    s = {1, 2, 'a'}
    s.add(3)
    
    print(s)
    
    

    {1, 2, 3, 'a'}

    2.remove()

    # set之remove()
    s = {1, 2, 'a'}
    s.remove(1)
    
    print(s)
    
    

    {2, 'a'}

    3.difference_update()

    # str之difference_update()
    pythoners = {'jason', 'nick', 'tank', 'sean'}
    linuxers = {'nick', 'egon', 'kevin'}
    pythoners.difference_update(linuxers)
    
    print(f"pythoners.difference_update(linuxers): {pythoners}")
    
    

    pythoners.difference_update(linuxers): {'tank', 'jason', 'sean'}

    4.discard()

    # set之discard()
    s = {1, 2, 'a'}
    # s.remove(3)  # 报错
    s.discard(3)
    
    print(s)
    
    

    {1, 2, 'a'}

    5.isdisjoint()

    # set之isdisjoint(),集合没有共同的部分返回True,否则返回False
    pythoners = {'jason', 'nick', 'tank', 'sean'}
    linuxers = {'nick', 'egon', 'kevin'}
    pythoners.isdisjoint(linuxers)
    
    print(f"pythoners.isdisjoint(linuxers): {pythoners.isdisjoint(linuxers)}")
    
    

    pythoners.isdisjoint(linuxers): False

    4.存一个值or多个值:多个值,且值为不可变类型。

    5.有序or无序:无序

    6.可变or不可变:可变数据类型

  • 相关阅读:
    python编码基础知识
    python编码问题
    python中文乱码
    mysql sql灵活运用
    MySQL函数讲解(MySQL函数大全)
    python:UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xef in position xxx: ordinal not in range(128)
    sql replace into 与 insert into
    微信布局
    盘点六大在中国复制失败的O2O案例
    字符串问题(一)
  • 原文地址:https://www.cnblogs.com/zhangmingyong/p/11303486.html
Copyright © 2011-2022 走看看