【Python自学记】3.容器

Python 容器

1.列表
  • 列表定义

    列表用来顺序存储相同或者不同类型数据的集合,列表内存储的元素是有序的,列表使用一对[ ]表示,列表中存储的每个值叫元素,元素之间使用逗号隔开

    # 存储相同数据类型
    name_list=["张三","李四","王五"]
    # 打印数据类型
    print(type(name_list))
    
    print(name_list)
    
    
    
    #存储不同数据类型
    info=["张三","男",20]
    print(info)
    
  • 向列表添加元素

    info_list=[["张三","男",20],["王五","男",16]]
    
    # 1.append()方法
    new_info=["李四","男",18]
    info_list.append(new_info)
    print(info_list)
    
    
    # 2.insert()方法
    new_info=["小美","女",18]
    info_list.insert(1,new_info)
    print(info_list)
    
    # 3.extend()方法
    new_infos=[["马六","男",18],["小黑","女",18]]
    info_list.extend(new_infos)
    print(info_list)
    
    # 4.使用+号拼接
    str_list1=["a","b","c"]
    str_list2=["e","f","g"]
    str_list3=str_list1+str_list2
    print(str_list3)
    
  • 修改列表中元素值

    # 索引修改元素值
    info_list=["小美","女",20]
    #年龄涨一岁
    info_list[2]+=1
    print(info_list)
    
  • 查询列表中元素

    # 根据索引查询
    info_list=["小美","女",20]
    name=info_list[0]
    sex=info_list[1]
    age=info_list[2]
    print("姓名:{},性别:{},年龄:{}".format(name,sex,age))
    
    
    # for循环遍历
    for i in range(0,len(info_list))
       print(info_list[i]) # 索引查询值
    
    
    for item in info_list
       print(item) #直接遍历元素
    
    
    # while循环遍历
    i=0
    while i < len(info_list):
       print(info_list[i])
       i+=1
    
  • 删除列表中元素

    # del删除指定下标的元素
    info_list=["小美","女",20]
    del info_list[2]
    print(info_list)
    
     
    # remove()方法
    info_list=["小美","女",20]
    info_list.remove("女")
    print(info_list)
    
    
    # pop()方法
    info_list=["小美","女",20]
    info_list.pop(1) # 根据指定索引删除
    print(info_list)
    
    info_list.pop() # 默认从列表的末尾删除一个元素
    print(info_list)
    
  • 列表切片

    '''
    语法格式 list[start:end:step]
    start:开始索引
    end:结束索引
    step:步长,默认是1
    
    注:切片的截取范围是左闭右开
    '''
    
    str_list=["a","b","c","d","e","f"]
    print(str_list[:3]) #截取前三个
    print(str_list[3:]) #截取后三个
    print(str_lsit[1::2]) #从下标是1开始截取,步长是2
    
  • 列表元素排序

    num_list=[1,9,7,3,8,0]
    
    num_list.sort() #升序
    print(num_list)
    
    num_list.sort(reverse=True) #降序
    print(num_list)
    

2.元组
  • 元组使用一对小括号表示

    #定义元组
    tp=(1,2,3)
    #定义空元组
    tp_none=()
    
  • 元组与列表区别

    • 相同点:都是可以顺序存储相同数据类型或者不同数据类型的元素
    • 不同点:元组被定义后不能修改其中元素,元组不支持添加,修改,删除元素操作
  • 查询元组中元素

    info_tp=("小美","女",20)
    
    # 索引查询
    name=info_tp[0]
    sex=info_tp[1]
    age=info_tp[2]
    print("姓名:{},性别:{},年龄:{}".format(name,sex,age))
    
    
    # for循环遍历
    for item in info_tp
       print(item) #元素直接遍历
    
    
    # while循环遍历
    i=0
    while i < len(info_tp):
       print(info_tp[i])
       i+=1
    
3.字典
  • 字典定义

    字典主要用于存储key-value键值对形式的数据,字典使用一对{ }表示,一个元素就是一个键值对,多个元素之间使用逗号隔开。

    #定义字典
    info_dict={"name":"张三","sex":"男","age":20}
    print(info_dict)
    
  • 向字典中添加键值对

    info_dict={"name":"张三","sex":"男","age":20}
    info_dict["tel"]="13056785678"
    print(info_dict)
    
  • 修改字典中键值对

    info_dict={"name":"张三","sex":"男","age":20}
    
    age=info_dict.get("age",0)
    print("原age:{}".format(age))
    
    info_dict["age"]=18
    age=info_dict.get("age",0)
    print("修改后age:{}".format(age))
    
  • 查询字典中键值对

    # 根据key查询值(不存在的key会报错)
    info_dict={"name":"张三","sex":"男","age":20}
    age=info_dict["age"]
    print("age:{}".format(age))
    
    
    # 根据get()函数查询
    info_dict={"name":"张三","sex":"男","age":20}
    age=info_dict.get("age") #key存在
    print("age:{}".format(age))
    
    
    tel=info_dict.get("tel") #key不存在
    print("tel:{}".format(tel))
    
    
    tel=info_dict.get("tel","10000") #key不存在,给默认值
    print("tel:{}".format(tel))
    
  • 删除字典中键值对

    info_dict={"name":"张三","sex":"男","age":20}
    del info_dict["age"]
    print(info_list)
    
  • 遍历字典

    info_dict={"name":"张三","sex":"男","age":20}
    
    # 根据key遍历
    for key in info_list.keys():
       print("{}:{}".format(key,info_list[key]))
    
    
    # 根据value遍历
    for value in info_list.values():
       print(value)
    
    
    # 根据键值对
    for item in info_list.items():
       print("item:",item)
       print("key:",item[0])
       print("value:",item[1])
    
    
    for key,value in info_list.items():
       print("{}:{}".format(key,value)
    
4.集合
  • 集合定义

    集合使用类型set,集合用于无序存储相同或者不同数据类型的元素,集合使用一对{ }表示,与字典不同集合内的值不是键值对,是单独的数值。

    #集合定义
    id_set={"1","2","3"}
    #打印类型
    print(type(id_set))
    
    print(id_set)
    
  • set函数创建集合

    #列表或者元组使用set()创建集合
    id_list=["a","b","c","a"]
    id_list_set=set(id_list)
    print(id_list_set)
    
    id_tuple=("a","b","c","a")
    id_tuple_set=set(id_tuple)
    print(id_tuple_set)
    
    #字符串
    str_set=set("hello")
    print(str_set) #按字母拆分并去重
    
  • 集合中使用in和not in

    id_set={"a","b","c"}
    
    # in
    id="c"
    for id in id_set:
       print("{}存在".format(id))
    
    
    # not in
    id="f"
    for id not in id_set:
       print("{}不存在".format(id))
    
  • 向集合中添加元素

    id_set={"a","b","c"}
    
    # add()方法
    id_set.add("d")
    print(id_set)
    
    # update()方法
    id_set.update(["d","d"]) #列表
    print(id_set)
    
    id_set.update(("e","f")) #元组
    print(id_set)
    
    new_id_set={"aa","bb"}
    id_set.update(new_id_set) #添加集合
    print(id_set)
    
    id_set.update(["cc","dd"],["ff","ee"]) #多个列表
    print(id_set)
    
    id_set.update("aaaaaaa") # 字符串,拆分,去重
    print(id_set)
    
  • 删除集合中的元素

    # remove()方法
    id_set={"a","b","c"}
    id_set.remove("a") #存在a删除不报错
    print(id_set)
    id_set.remove("a") #不存在a删除报错
    
    
    # discard()方法
    id_set={"a","b","c"}
    id_set.discard("a") #存在a删除不报错
    print(id_set)
    id_set.discard("a") #不存在a删除不报错
    print(id_set)
    
    
    # pop()方法
    id=id_set.pop()
    print(id_set)
    print("被删除元素:",id)
    
  • 集合中的交集、并集、差集操作

    # 交集(&、intersection() )
    num_set1={1,2,3}
    num_set2={2,3,4}
    num_set3=num_set1&num_set2 # 使用&运算求交集
    num_set4=num_set1.intersection(num_set2) # 使用intersection方法求交集
    print(num_set3)
    print(num_set4)
    
    # 并集(|、union() )
    num_set1={1,2,3}
    num_set2={2,3,4}
    num_set3=num_set1|num_set2 # 使用|运算求并集
    num_set4=num_set1.union(num_set2) # 使用union方法求并集
    print(num_set3)
    print(num_set4)
    
    # 差集(-、difference() )
    num_set1={1,2,3}
    num_set2={2,3,4}
    num_set3=num_set1-num_set2 # 使用-运算求差集
    num_set4=num_set1.difference(num_set2) # 使用difference方法求差集
    print(num_set3)
    print(num_set4)
    

  • 当才华还配不上野心,就静下来学习
  • blog地址:hangzhi.site
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值