首页 > 其他分享 >元组和字典

元组和字典

时间:2023-01-09 22:34:05浏览次数:54  
标签:dict1 列表 dict print 元组 字典

一.元组
1.与列表类似,区别在于:①元组用小括号()定义,②元组的元素不能修改
2.操作:①交换变量的值
             ②元组的方法    .count() 和 .index()
             ③元组切片 和列表切片一样
             ④拆包和装包:拆包的元素,整型、字符串、列表均可;装包时均为列表


1.基础
[Python] 纯文本查看 复制代码 ?

01 02 03 04 05 06 07 08 09 10 11 12 13 # list num_list = [123"4"]   # 元组 - tuple 与列表类似 # 区别:1.元组的元素不能修改 2.用()定义 tuple1 = ()         # 空元组 tuple2 = tuple()    # 空元组 info_tuple = ("张三"201.75) print(type(tuple1), type(tuple2), type(info_tuple))   tuple3 = ("Alex")   # 不是元组,而是一个字符串,()表示调整优先级 print(type(tuple3)) tuple4 = ("Alex",)  # 表示元组只有一个元素


[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 # 元组元素不可变 # 需求:获得一个元组10个元素,每个元组都是1-10的随机数 import random   list1 = [] for in range(10):     rand = random.randint(1,20)     list1.append(rand)   print(list1, len(list1))   # 列表 转换成 元组,列表和元组可以互相转换 tuple1 = tuple(list1)   # list1 = list(tuple1) print(tuple1)


2.操作
①交换
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 # 交换变量 = 1 = 2 # 法 1: = a = b = c # 法 2: = + b = - b = - b # 法 3: # (b, a) = (a, b)   # 括号可以去掉 b, a = a, b print(a, b)

②元组的方法    .count() 和 .index()
[Python] 纯文本查看 复制代码 ?
1 2 3 4 5 6 # 元组中的方法 index() 和 count() # index()   值->索引 # print(tuple1.index(1))   # count()   统计某个元素在元组中出现的次数 print(tuple1.count(2))


③元组切片
[Python] 纯文本查看 复制代码 ?
1 2 # 通过元组切片 查看元素 print(tuple1[5:])


④拆包和装包
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 # 整型 -> 列表 t1 = (2567963) a, *b, c = t1   # *b表示要拆包,它不固定长度 print(a) print(*b)   # type(*b)没有数据类型 print(c)   # *b——>b 装包为一个列表   # 字符串 ->列表 x, y, *= "hello" print(z)   # 列表 -> 列表 x, y, *= ("niao""mao"8'aa''hello') print(z)



二.字典
1.基础
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 # 字典 dict dict1 = {}      # 空字典 dict2 = dict()  # 空字典 print(type(dict1),type(dict2))   tom ={     "name""tom",     "age"18,     "height"180,     "weight"75.0,     "name"'TOM' } # 字典的元素是键值对 key: value # 键是唯一的,键必须是数字、字符或元组,值可以是任意类型 # 字典是无序的,索引就是键 # 字典的键必须是唯一的,如果定义字典的时候,有相同键的 键值对,则会保留 后面的 键值对 print(tom)   # 通过键取值 print(tom['age'])



2.数据类型转换

[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 # 列表 元组 字典  ————>字典 t1 = ("name""tom")    # 不能转成字典 list1 =[("name""tom"), ("age"18)] # 推荐:列表内元组转字典,里面的元组不会变,外面可以灵活 d1 = dict(list1)        # [(a,b),(c,d)]  a 和 c必须是数字、字符串或元组 print(d1)   t2 = (("name""tom"), ("age"18)) # 过于不灵活:元组内元组 转字典 d2 = dict(t2) print(d2)   t3 = (["name""tom"], ["age"18]) # 元组内列表 d3 = dict(t3) print(d3)   l4 = [["name","tom"],["age",18]] d4 = dict(l4) print(d4)



3.增加元素
[Python] 纯文本查看 复制代码 ?
1 2 3 4 5 6 7 # 增:定义一个字典,通过增加键值对的形式,增加值 dict1 = {} dict1["device_type"= "cisco" print(dict1) # 改:对索引重新赋值 dict1["device_type"= "huawei" print(dict1)



4.字典新增元素案例
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # 用户注册功能 # 填写 username,password,email,phone 完成注册 data_base =[] while True:     user_dict = {}     user_dict['username'= input("请输入用户名:")     user_dict['password'= input("请输入密码:")     re_passwd = input("请再次输入密码")     if re_passwd != user_dict['password']:         print("两次输入的密码不一致,请重新输入!")         continue     user_dict['email'= input("请输入邮箱:")     user_dict['phone'= input("请输入手机号码:")       data_base.append(user_dict)       ask = input("是否继续注册?(Y/N)")       if ask.upper() =="N":         print("程序退出!")         break   print(data_base)


5.取值
[Python] 纯文本查看 复制代码 ?
1 2 3 4 5 6 7 dict1 = {"张三"100,"李四"100,"王五"95,"老六"88} # 根据字典的键取值 print(dict1["张三"])   for in dict1:     # i只是字典的键     if dict1[i] > 90:         print(i)



6.解封装 item(),values(), keys()
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # items() values() keys() dict1 = {"张三"100,"李四"100,"王五"95,"老六"88} result1 = dict1.items() print(result1) print(type(result1)) # items 类型可以转成列表, 与字典转列表不一样 list1 = list(result1)   # 键和列表都留下 print(list1)   list2 = list(dict1)     # 只留下键 print(list2)   # values                只留下值 result2 = dict1.values() print(type(result2)) print(result2) list3 = list(result2) print(list3)   # keys                  只留下键 result3 = dict1.keys() print(result3) list4 = list(result3) print(list4)

7.删除
[Python] 纯文本查看 复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 # del 关键字 dict1 = {"张三"100"李四"100"王五"95," 老六"88} del dict1['张三'] print(dict1)   # 也可以删整个字典 # del dict1   # pop() 要给键值才能删 dict1.pop("李四") print(dict1)   var = dict1.pop("张三""这个键不存在")   # 只是不会报错,这句话并不会显现 print(dict1)                           # 要想显现,用 var接收 print(var)     # popitem 删字典键值对,后进先出 var1 = dict1.popitem() print(dict1) print(var1)

标签:dict1,列表,dict,print,元组,字典
From: https://www.cnblogs.com/chengfo/p/17038708.html

相关文章

  • 统计异或值在范围内的数对有多少(01字典树)
    1803.统计异或值在范围内的数对有多少-力扣(Leetcode)题意:   思路:很经典的方法,01字典树,同时在树上多维护一个数据,有多少个节点经过当前节点,记为cnt我们可以......
  • 算法—查找三数相加为零的三元组
    packagealgorithm;importjava.util.ArrayList;importjava.util.Arrays;importjava.util.List;/***给定一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b......
  • 字典树
    字典树概念又称单词查找树,Trie(读法类似try)树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于......
  • python字典推导式生成法用法
    prices={"aaa":166,"bbb":56,"cdfsa":133,"fs":22,"Sy":233.34}#生成式(推导式)的用法#用股票价格大于100元的股票构造一个新的字典prices......
  • list与字典
    1·关于C#从一个List复制到另一个List的简便写法。https://blog.csdn.net/carlblack1987/article/details/1161437992·C#List复制https://www.cnblogs.com/therock/a......
  • 213. 字典序最小问题 Best Cow Line(挑战程序设计竞赛)
    地址https://www.papamelon.com/problem/213给定一个字符SS,长度为NN。由SS构成出新的字符串TT,长度也为NN。起初TT是一个空串,然后执行NN次操作,每次操作有两种......
  • python中字典介绍
    #字典学习可变容器模型#创建字典的字面量语法scores={'刘德华':95,'白元芳':78,'狄仁杰':82}print(scores)#{'刘德华':95,'白元芳':78,'狄仁杰':82}......
  • python中元组的介绍
    ###使用元组#原则与列表类似,是一种容器数据类型#定义元组t=('骆昊',30,True,'武汉')print(t)#获取元组中的元素print(t[0])#遍历元组中的值formemberint:......
  • python字典中dict.get()和dict.setdefault()的异同点
    1.相同点:两者是参数相同:dict.get(key,default=None),dict.setdefault(key,default=None)如果指定的键不存在时,两者都返回默认值,默认是None如果指定的键存在时,即使......
  • 利用VBA字典实现单条件,结果多值查询
    来源:利用VBA字典实现单条件,结果多值查询-知乎(zhihu.com)很好的利用字典数据类型 利用VBA字典实现单条件,结果多值查询VBA语言专业教育分享成果,随喜......