zoukankan      html  css  js  c++  java
  • 列表、元祖、字典、集合

    一:列表类型

    用途:用于记录多个值(同种属性)

    定义方式:在[]内用逗号分隔开多个任意类型的值

    优先掌握的操作:

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

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

      3.长度

      4.成员运算in和not in

      5.追加&插入

        append:追加在最后(L.append(2222))

        insert;插入列表(L.insert(0,1111))

      6.删除

        remove:根据元素名去删

        del:删除(del l[0])根据索引删

        res=l.pop()默认删除第一个,有返回值,是删掉的值

      7.循环

        l=['a','b.,'c','d']

        for item in l:

          pritn(item)

    需要掌握的操作:

      reverse:反转,将列表反转过来

      sort:比较大小,将默认从小到大排列,如果要从小到大排列,只要reverse+True

    l=[10,5,6,4]
    l.sort(reverse=True)
    print(l)
    
    l=[10,5,6,4]
    items=[1,2,3]
    l.extend(items)
    print(l)
    
    l=[10,5,6,4]
    print(l.count(10))
    View Code

    练习题:

    # 1.队列:先进先出
    l=[]
    l.append('first')
    l.append('second')
    l.append('third')
    print(l)
    print(l.pop(0))
    print(l.pop(0))
    print(l.pop(0))
    
    # 2.堆栈:先进后出
    #
    l=[]
    l.append('1')
    l.append('2')
    l.append('3')
    print(l)
    print(l.pop(-1))
    print(l.pop(-1))
    print(l.pop(-1))
    View Code

    二:元祖类型tuple

    1.用途:就是一个不可变的列表

    定义方式:在()内用逗号分隔开多个任意类型的元素:

    t=(1,2.2,'aa',('b',c),['ff','g'])

    print(type(t))

    强调:如果元祖中只有一个值的话,要在后面加上一个','不然表示的是包含的关系

      l=['a']

      print(type(1),1[0])

    2.类型转换:

      t1=tuple('hello')

      t2=tuple([1,2,3])
      print(t1)
      print(t2)

    3.常用操作+内置方法

    优先掌握的操作:

      t=(1,2.2,'a',('b','c'))

    3.1:按照索引取值(正向取+反向取):只能取

    3.2切片(顾头不顾尾)

    3.3长度

    3.4成员运算in和not in

    3.5循环

    需要掌握的操作:

    t=('a','b','c','e','a','f')
    print(t.index('a',1,5))
    print(t.count('a'))

    该类型总结:

      存多个值

      有序

      不可变

    三:字典类型dict

    1.用途

      用于记录多个值,列表是索引对应值,而字典是key对应值,其中key对value有描述性作用

    2定义方式:

      在{}内用逗号分隔开多个元素,每个元素都是key:value的形式,其中key可以是不可变类型,通常是字符串类型,而value可以是任意类型

      类型转换:

    d=dict(x=1,y=2,z=3)
    print(d)

    items=[('name','egon'),('age',18),('gender','male')]
    d={}
    for item in items:
    d[item[0]]=item[1]

    d=dict(items)
    print(d)

    了解
    keys=['name','age','gender','height','weight']
    d={}
    for key in keys:
    d[key]=None

    d={}.fromkeys(keys,None)
    print(d,type(d))

    3.常用操作+内置方法

    优先掌握的操作:

    3.1.按key取值:可存可取

    dic={'name':'egon','age':18}
    print(dic['name'])
    dic['name']='EGON'
    dic['gender']='male'
    print(dic)
    
    l=['a','b','c']
    l[0]='A'
    l[4]='AAA'
    View Code

    3.2长度len

    3.3成员运算in和not in:一字典的key为准的

    3.4删除

    dic={'name':'egon','age':18}
    del dic['name']
    print(dic)
    
    res=dic.pop('name')
    print(dic)
    print(res)
    
    res=dic.popitem()
    print(res)
    View Code

    3.5键keys(),值values(),键值对items()

      在Python2中与Python3中是有区别的:

    在python2
    >>> dic={'name':'egon','age':18}
    >>>
    >>>
    >>> dic.keys()
    ['age', 'name']
    >>>
    >>>
    >>> dic.values()
    [18, 'egon']
    >>>
    >>>
    >>> dic.items()
    [('age', 18), ('name', 'egon')]
    
    在python3
    >>> dic={'name':'egon','age':18}
    >>>
    >>> dic.keys()
    dict_keys(['name', 'age'])
    >>> dic.values()
    dict_values(['egon', 18])
    >>> dic.items()
    dict_items([('name', 'egon'), ('age', 18)])
    View Code

    3.6循环

    dic={'name':'egon','age':18}
    for k in dic:
        print(k)
    
    for k in dic.keys():
        print(k)
    
    for v in dic.values():
        print(v)
    View Code

    四:集合

    1.用途:

      1,关系运算    2,去重(局限性大)

    2.定义方式:在{}内用逗号分隔开多个元素,但是元素的特点是

      2.1集合内的元素必须是不可变类型

      2.2集合内的元素无序

      2.3集合内的元素不能重复

    优先掌握:

      | 合集:求所有报名的学生

      & 交集:求同时报名两门课程的学员

      - 差集:求只报名Python课程的学员

      ^ 对称差集:

      ==:相等

      父集子集描述的是一种包含于被包含的关系

      >=父集:

      <=:子集:

    需要掌握的:

      存多个值

      无序

      可变

    集合去重:

      1.只能针对不可变类型

      2.不能保证原来顺序

    一些指令集:

      s1={1,2,3}
      s1.update({3,4,5,6})#更新

      s1.pop()#随机删除
      s1.remove('bb')#没有返回值,不是随机删,删除集合中没有的元素会报错
      s1.discard('bbb')#与remove一样,但是删除没有的元素时不会报错
      s1.add(4)#随机加

      print(s1)

  • 相关阅读:
    函数指针_typedef
    网络学习_2
    网络学习_1
    字节序
    string相关总结
    C++ const用法总结
    U盘安装CentOS 7.0
    windows平台CodeBlocks MinGW C++11开发环境搭建
    关于32位windows与4GB内存的那些事儿
    开启win7系统关闭日志分析
  • 原文地址:https://www.cnblogs.com/liuxiaolu/p/10001450.html
Copyright © 2011-2022 走看看