zoukankan      html  css  js  c++  java
  • python基础04--list,cou,dict

    1.1 列表list

    1、列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串,列表,元组,集合,字典

    2、列表是有序的, 可以索引,切片

    3、List中的元素是可以改变的

    4、list

    len(list1)  长度

    list1 + list2 多个列表链接

    list1*3  列表重复

    3 in list1   in判断元素是否在列表中

     

    5、List操作:

    增:

    list1.append()      在列表最后增加值

    list1.insert(下标,元素) 向指定位置插入元素

    list1.extend(seq)      在列表末尾一次性追加另一个序列的多个值 seq可以是字符串,元组,集合,字典(取字典的key值)

     

    删:

    list1.pop(index)    移除元素,并返回该元素的值, 若没有传入元素,则默认为最后一个元素 列表被改变

    list1.remove(元素) 移除列表中某个值的第一匹配项  列表被改变 没有返回值

    list1.clear()      清空列表

    del  list1         删除列表

    del  list1[2:1]      切片去删除列表元素

     

    改:

    list1[index] = 新元素

    list1[0:2] = 新元素   把对应切片元素去掉后,换成新元素最小的多个值

     

    查:

    list1[index]

    for 循环

     

    公共方法:

    len(list1)          返回列表的元素个数

    list1.count(元素)    返回元素在列表中的个数

    list1.index()        返回元素索引,找不到报错

    max(list1)          返回列表元素最大值

    min(list1)          返回列表元素最小值

    list(seq)           转换  seq可以是字符串,元组,集合,字典(取字典的key值)

     

    排序:

    list1.sort()         对列表正向排序  列表被改变  元素一定要相同类型

    list1.sort(reverse = True) 对列表反向排序

    list1.reverse()      反转列表中的元素 列表被改变

     

    list.copy()        复制列表。浅复制。列表中有内嵌列表时,改变内部列表,copy的列表也会改变

     

    列表的嵌套: 列表中元素的类型可以不相同,它支持数字,字符串,列表,元组,集合,字典

    li= [1][1]    深层查找

     

    1.2 元祖 couple  只读列表,可循环查询,可索引切片

    1、儿子不能改,孙子可能可以改

    2、tup1=()#空元组   tup2=(20,)# 一个元素,需要在元素后添加逗号

    3、元组可以使用+链接多个元组

    4、列表转化为字符串

    s.join(可迭代对象)   s链接可迭代对象中的每一个元素,返回字符串

      例子: str = “women”

       “++”.join(str)   返回 w++o++m++e++n

    5、元祖操作:

    del  tou1   删除整个元祖

    len(tou1)    返回元祖元素个数

    max(tou1)    元组中最大值

    min(tou1)    元组中最小值

    touple(seq)   转换 seq seq可以是字符串,元组,集合,字典(取字典的key值) 不改变原来的对象

     

    1.3 字典 dict

    1、dict key  必须是不可变数据类型,
           value 任意数据类型, 可以是任何python对象
     dict  优点:二分查找去查询
             存储大量的关系型数据
            特点:3.6以上是 有序的(按照增加的顺序排列)

    2、创建空字典使用 { }

    3、dict操作

       增:

    dic1[key] = value          没有对应的键值对,添加

    dic1[key] = value          有对应的键值对,修改

    dic1.setdefault(key,value)   有对应的键值对,不修改,没有才添加

                            value未传值默认为 None

    删:

    dic1.pop(key)              有返回值,按key来删除。  如果key没有,默认会报错。

    dic1.pop(key,”自定义”)      如果设置可以返回设置值

    dic1.popitem()             删除最后一个,   返回元祖,值为删除的键值

    dic1.clear()                清空字典

    del dic1[key]               删除键值对, 没有会报错

     

    改:

    dic1[key] = value          有对应的键值对,修改

    dic1.update(dic2)         dic2中的key/value 覆盖添加到dic1

       (如果dic2中和dic1中有相同的 key,则用dic2覆盖dic1

     

    查:

    dic1[key]               返回对应key的值,没有key报错

    dic1.get(key)   返回对应key的值,没有key不报错  优先使用

    dic1.get(key,”自定义”)    如果设置可以返回设置值

    dic1.keys()              以列表返回所有的key

    dic1.values()             以列表返回所有的value

    dic1.items()             返回一个列表 ,列表中为 一个个(key,value) 元组

    for i in dic1:print(i)        打印keys

    for i in dic1.values():print(i)  打印values

    for  k,v  in dic1.items():print(i)    打印 key value

     

    key in dict              判断key是否在字典中

    dic1.clear()             清空字典

    len(dic1)               计算字典中key总数

    dict.fromkeys(seq,value)  seq中的元素作为key,value为对应的初始值(没有则为noneseq可以是字符串,元组,集合,字典(取字典的key值),不影响原dict

     

    4、嵌套

    dic1[key]

  • 相关阅读:
    array and ram
    char as int
    pointer of 2d array and address
    Install SAP HANA EXPRESS on Google Cloud Platform
    Ubuntu remount hard drive
    Compile OpenSSL with Visual Studio 2019
    Install Jupyter notebook and tensorflow on Ubuntu 18.04
    Build OpenCV text(OCR) module on windows with Visual Studio 2019
    Reinstall VirtualBox 6.0 on Ubuntu 18.04
    Pitfall in std::vector<cv::Mat>
  • 原文地址:https://www.cnblogs.com/fbug/p/11792695.html
Copyright © 2011-2022 走看看