Python元组字典集合简单介绍
元组
Python的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。元组和字符串都是是不可变序列.
语法:定义元组语法 () 和 ,
访问元组:和列表一样:a[1]
修改元组:Python中不允许修改元组的数据,包括不能删除其中的元素。
元组是不可变的,也就是说,元组中的元素在被赋值后不能改变。但是,
如果元素本身是一个可变数据类型的列表,那么其嵌套项可以被改变
tuple函数
tuple函数的功能与list函数基本上一样的,以一个序列作为参数并把它转换
为元组,如果参数是元组,那么该参数就会被原样返回。
多维列表/元祖访问 a[][] 元组的优点
与列表相比,元组的优点:
1.通常将元组用于不同的数据类型,将列表用于相同(或相似)的数据类
型。
2.由于元组不可变,所以遍历元组比列表要快(较小的性能提升)。
3.元组可以用作字典的Key,而列表不行。因为字典的Key 必须是不可变的,
元组本身就是不可变的。
4.如果数据不需要更改,将其作为元组来实现,可以确保"写保护"。 字典
变量student为字典类型:
student= {‘name’:‘宋江’, ‘id’:100, ‘sex’:‘男’, ‘address’:‘中国’}
字典访问
student[‘key’]
➢ 访问不存在的键则会报错,解决方法:
➢ get()
使用get(‘key’)不存在不会报错,而且可以设置默认值
在我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置
默认值
字典的增删改查 添加元素
如果在使用 变量名[‘键’] = 数据 时,这个"键"在字典中,不存在,
那么就会新增这个元素
删除元素
对字典进行删除操作,有一下几种
1. del删除指定的元素
2. del删除整个字典
3. clear清空整个字典
4. pop删除字典指定元素并且得到值
5. popitem随机返回并删除字典中的一对键和值(项)第二部分 {默认会从最后一个开始删除} 修改元素
字典的每个元素中的数据是可以修改的,只要通过key找到,即可修
改
查找元素
info = {‘name’:‘宋江’, ‘id’:100, ‘sex’:‘男生’, ‘address’:‘中国梁山’}
name = info.get("name")
print("使用get(key)查找=",name)
name = info["name"]
print("使用[key]=",name)
if "name" in info:
print("使用in根据key从字典中查找name是存在的")
if "name" in info.keys():
print("使用in根据key从字典中的info.keys()查找name是存在的")
if "宋江" in info.values():
print("使用in根据’值’从字典中的info.values()查找宋江是存在的")
#字典的查看方式
info = {‘name’: ‘宋江’, ‘age’: 22, ‘sex’: ‘男’, ‘address’: ‘中国梁山’}
#1.通过Key
print(info["name"])
#2.通过判断,某个Key是否存在于字典中
if "age" in info:
print("使用in根据key从字典中查找age是存在的")
if "name" in info.keys():
print("使用in根据info.keys()从字典中查找name是存在的")
if "宋江" in info.values():
print("根据‘值’从字典中的info.values()查找宋江是存在的") 字典的键值操作
len() 测量字典中,键值对的个数
keys 返回一个包含字典所有KEY的列表
values 返回一个包含字典所有value的列表
items 返回可遍历的(键, 值) 元组数组
has_key Python3中废弃了,这个方法是python 2.6以后支持的,但在python 3.0版本开始
将使用in.
dict.has_key(key)如果key在字典中,返回True,否则返回False
字典遍历
通过for … in …:的语法结构,我们可以遍历字符串、列表、元组、
字典等数据结构。 字符串遍历
列表遍历
元组遍历
使用枚举遍历enumerate()
遍历列表引入enumerate
如果对一个列表,既要遍历索引又要遍历元素时,首
先可以这样写:
集合(set):
集合与之前列表、元组类似,可以存储多个数据,但是这些数据是不重
复的。
集合对象还支持联合(union), 交集(intersection),差集(difference)等数学运算。
集合(set)、列表(list)、元组(tuple)相互转换:
x = set("abcd")有重复的值就是自动去重,会按照ASCII编码表排序
y = set("djec")
x&y求交集
x|y求并集
x-y求差集
引用
用id()来判断两个变量是否为同一个变量的引用
在Python中值是靠引用来传递的
我们可以用id()来判断两个变量是否为同一个变量的引用。
我们可以把id理解为那块内存的地址表示。
可变类型和不可变类型
不可变类型:字符串、数字、元组
可变类型:列表,字典
不可变类型不能修改值
可以变类型可以修改值
引用的应用-三种方式交换两个数
第一种方式:使用第三方变量
第二种方式:使用两个数和 在 减掉另外一个数
第三种方式:Python特有方式 #交换两个数,并且保证地址不变 #第一种方式:使用第三方变量实现交换 a=4 b=5 print("交换前:") print(id(a)) print(id(b)) c = a a = b b = c print("交换后:") print(id(a)) print(id(b)) #第二种使用两个数和减掉另外一个数 a=4 b=5 print("交换前:") print(id(a)) print(id(b)) a = a+b b = a-b a = a-b print("交换前:") print(id(a)) print(id(b)) #第三种,Python独有方式 a = 4 b = 5 print("交换前:") print(id(a)) print(id(b)) a,b = b,a print("交换后:") print(id(a)) print(id(b))
想要了解更多免费Python相关资料,官方技术交流群:943406067 ,让你快速掌握java从入门到精通实战技能。加微信也可以哦:微信号:codingbb
有网瘾也别摔手机!试试这个方法,大家都成功了智能手机普及后,现在的年轻人网瘾越来越大了。网瘾大了,父母也很着急,有些父母甚至会摔手机来惩罚他们,然而我觉得摔手机是没用的,还得从根本上解决问题!手机的用途我们使用手机是用来沟通
车主访谈10万级合资家轿,起亚K3经济耐用配置高,要什么日德系10万元出头的预算,想买辆合资品牌家轿车,选什么好?捷达桑塔纳宝来,车型太老,又是大众套娃脸,没意思轩逸朗逸卡罗拉,好像还不错,但价格高配置低,差点意思!真的就没有一台经济实惠省心
大宇小T吹风机深度体验静音速干,飘逸秀发每个人都在追求柔顺有光泽适度蓬松不贴头皮,不过想要好的头发,除了先天发质优势外,后期还必须注意保养。其实在护发方面大概可以分为外部护理和内服食补,内外结合才可以到达优质发质。在食物
众车企献爱心援助河南捐款明细盘点2021年7月20日,河南省多地遭遇持续强降雨。连续强降雨造成郑州市大面具严重积水,郑州市也已升级为级防洪应急。据扉旅汽车小编从河南省应急管理厅获悉,截止7月22日,此轮强降雨造成
江铃吉利,雷诺在华的新能源梦由谁买单?沉寂了许久的雷诺忽然又掀起了波澜。而风浪的主角不再是东风,而是江铃与吉利。近日,江铃雷诺的首款新能源轿车羿全面曝光,另一方面有传闻爆出雷诺正在寻求吉利的帮助,以便自己生产燃油车。或
广汽大目标定到了十五年后,硬骨头要怎么啃?一个大目标。7月27日,2021年投资者开放日上,广汽集团董事长曾庆洪公布了最新未来发展目标2025年全集团汽车产销量达350万辆,新能源占比达到20到2035年力争实现汽车产销量
PRO更强,第三代MG6PRO将运动进化到底说到第三代MG6的高光时刻,那一定是秒杀掉秒天秒地秒空气的思域的时候,正因此事件,MG6的运动表现得到了消费者认可。在网上大家很容易就能看到MG6吊打思域的话题。的确,无论是在运动
盈利4。8亿,江淮汽车再代工小米?守得云开见月明。折腾了许久的江淮汽车,终迎来了希望。7月27日晚间,江淮汽车发布公告,预计2021年上半年归属于上市公司股东的净利润为4。8亿元左右,同比扭亏为盈。较去年同期亏损1
6月乘用车市场燃油车趋平稳,新能源抢市场7月,车市各种晒成绩。近日,作为考官的乘联会也公布了关于乘用车6月的销量成绩。从单月数据看,6月乘用车市场零售量为157。5万辆,同比下降5。1,相较2019年6月下降11,前几个
铃木电动化战略虽迟但到!可市场还等得住吗?电动汽车这张牌,铃木终于打出来了。近日,据外媒报道,铃木计划于2025年推出首款电动汽车,并将在印度率先上市,随后在日本和欧洲销售。随着铃木进入电动汽车赛道,日本所有主要汽车制造商
汽车品牌有什么坏心眼呢,只是想做好年轻化,但年轻人认了吗?每当看到其他人开着自己心爱的座驾到处周游,而自己却每天在挤地铁时,扉旅汽车小编都流出了羡慕的泪水。近期终于下定决心,我要买一辆车!为了货比多家,可以说是跑遍了各大汽车品牌4S店。辗