zoukankan      html  css  js  c++  java
  • python--列表、字典、元组、集合对比

    数据类型
    # 计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。
    # a:整形和浮点型(正数和负数)
    # b:布尔类型(true,false)
    # c: 字符串
    # d:列表
    # e: 字典
    # f:元组
    # g: 集合

    #下文大纲:列表list 字典dict 元组tuple 集合set不同数据类型的定义、增加、删除、修改操作对比介绍,以及集合的并集、交集、差集、对称差集、自集、父集
    #list 列表形式 有顺序
    list=[]
    list=[1,2,3]
    list2=[
    ("name1", "y1"),
    ("name2", "y2")
    ]
    #----------------------------------------------------------------------
    #dict 字典形式 无序、key与value
    dict={}
    dict={"name1":"apple","name2":"egg"}
    #----------------------------------------------------------------------
    #tuple 元组形式 (tuple和list非常类似,但是tuple一旦初始化就不能修改,增加,删除,其嵌套list内容可变)
    #定义空
    tuple()
    #定义一个元素必须加”,”
    tuple=(1,)
    #----------------------------------------------------------------------
    #set 集合形式 1 无序 2 空集合,用set() 非空集合{} 3、集合主要作用去重复(例如将某一list 变为set形式后,list内重复元素保留唯一)
    set1=set()
    set2={1,2,3}
    #----------------------------------增加------------------------------------
    #列表增加
    list=[1,2,3]
    #list 增加一(尾部追加)
    list.append("t5")
    #list 增加二(指定位置插入)
    list.insert(1,"t6")
    #---------------------------------------------------------------------
    #字典增加
    dict={"name1":"apple","name2":"egg"}
    dict["name3"]="orange"
    #---------------------------------------------------------------------
    #集合增加
    set={"apple","egg"}
    #set 增加一 (一个元素)
    set.add("orange")
    #set 增加二 (n个元素)
    set.update(["test1","test2"])


    #----------------------------------删除------------------------------------
    #列表删除

    list=[1,2,3,4,5,6,7]
    #list 删除一 (指定元素) 如果元素不存在则报错
    list.remove(2)
    #list 删除二(指定索引 0删除第一位 空删除最后一位) 但是集合set.pop 不能指定0
    list.pop()
    #list 删除三(指定索引)
    del list[1]

    #---------------------------------------------------------------------
    #字典删除

    dict={"name1":"apple","name2":"egg"}
    #dict 删除一(指定key)
    del dict["name1"]

    #---------------------------------------------------------------------
    #集合删除
    set={"apple","egg","egg1","egg2"}
    #set 删除一 (删除任意元素,因其无序,不能指定索引,只能为空)
    set.pop()
    #set 删除二 (删除指定元素)如果元素不存在则报错
    #set.remove("egg")
    #set 删除三 (删除指定元素)如果元素不存在不报错
    set.discard("egg1")

    #----------------------------------修改------------------------------------
    #列表修改
    list=[6,7,8]
    #list 修改一(指定索引位置)
    list[2]="t"
    #---------------------------------------------------------------------
    #字典修改
    dict={"name1":"apple","name2":"egg"}
    dict["name2"]="orange"
    #---------------------------------------------------------------------
    #set 修改没有发现


    #----------------------------------输出------------------------------------
    #列表输出
    list=[6,7,8]
    #list 方法一:直接输出名字
    print(list)
    #方法二:循环输出名字
    for i in list:
    print(i)
    #---------------------------------------------------------------------
    #字典输出
    dict={"name1":"apple","name2":"egg"}
    dict["name2"]="orange"

    #dict 方法一:直接输出名字
    print(dict)
    #方法二:循环输出名字 只输出值
    for i in dict:
    print(dict[i])
    #---------------------------------------------------------------------
    #集合输出
    set={"apple","egg"}
    set.update(["777","888"])
    #dict 方法一:直接输出名字
    print(set)
    #方法二:循环输出名字
    for i in set:
    print(i)
    #----------------------------------集合的关系形式------------------------------------
    list1=[1,2,3,4,5]
    list2=[4,5,6,7,8]
    list3=[1,2,3]

    #将list转化为集合
    list1_set=set(list1)
    list2_set=set(list2)
    list3_set=set(list3)

    #交集
    print(list1_set.intersection(list2_set))
    print(list1_set&list2_set)
    #>>{4, 5}
    #并集
    print(list1_set.union(list2_set))
    print(list1_set | list2_set)
    #>>{1, 2, 3, 4, 5, 6, 7, 8}
    #差集 list1_set里面减去(与list2_set重复内容)
    print(list1_set.difference(list2_set))
    print(list1_set - list2_set)
    #>>{1, 2, 3}
    #对称差集 在list1_set或者list2_set中的元素,且去掉同时存在于两个集合中的元素
    print(list1_set.symmetric_difference(list2_set))
    print(list1_set ^ list2_set)
    #>>{1, 2, 3, 6, 7, 8}
    #子集--子在前 子是父的子集(true)
    print(list3_set.issubset(list1_set))
    #>>True
    #父集--父在前 父是子的父集(true)
    print(list1_set.issuperset(list3_set))
    #>>True
     
     
  • 相关阅读:
    第二次作业
    国庆节假期作业1
    memoize使用实例之创建XHR
    javascript 函数式编程(3)
    javascript 异步循环 asyncEach
    c++ 精简版 序列化
    javascript 函数式编程(4)
    javascript setZeroTimeout
    c++ 精简版 thread
    PHP Memoization
  • 原文地址:https://www.cnblogs.com/wenchengqingfeng/p/9213725.html
Copyright © 2011-2022 走看看