元组,字典,集合,布尔值

一:元组类型:
定义:元组是不可变的列表,有序,存多个值
定义方式:在()中用逗号将不同的任意类型的元素分隔开就叫元组,如果元组中只有一个元素,后面必须加逗号。
数据类型转换:s='hello'
print(tuple(s))=('h','e','l','l','o')
3、常用操作+内置的方法
3.1 优先掌握的操作:
1、按索引取值(正向取+反向取):只能取
t=('a','b','c')
t[0]='A'#False
2、切片(顾头不顾尾,步长)
t=('a','b','c')
print(t[0:2])
3、长度
print(len(t))
4、成员运算in和not in
t=('a','b','c',(1,2,3))
print((1,2,3) in t)
5、循环
t=('a','b','c',(1,2,3))
for item in t:
print(item)
3.2 需要掌握的操作
t=('a','b','b','c',(1,2,3))
print(t.count('b'))
print(t.index('b',2,4))
二:字典类型:
1、用途:记录多个不同属性的值.可变,无序,存多个值
2、定义方式:在{}内用逗号分隔开多个元素,每一个元素都是key:value的形式.
value可以是任意类型,而key必须是不可变的类型(通常应该是str类型)
数据类型转换dic=dict(.....)
3.优先掌握的操作:
1.按key取值,可存可取
dic={'name':'egon','age':18,'sex':'male'}
print(dic['name'])
dic['name']='EGON'
dic['height']=1.81#如果字典中有就改变值,没有就增加key&value
2、长度len
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
print(len(dic))=3 #字典的长度计算只计算key值
3、成员运算in和not in # 判断的是字典的key
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
print('name' in dic)=Ture
4、删除:字典的删除是选择key会将与key对应的value一起删除
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
del dic['name']
print(dic) del删除没有返回值

popitem删除后有返回值 返回的是以元组形式保存的('key','value')
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
t=dic.popitem()
print(t,type(t))= ('gender','male')(class 'tuple')

pop删除有返回值,返回的是value
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
v=dic.pop('name')
print(v)
5、键keys(),值values(),键值对items()在py3中,不会生成列表。比喻成下蛋的母鸡,肚子里有蛋,要一个下一个。py2会生成列表
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
key=dic.keys()
vals=dic.values()
i=dic.items()
print(key,vals,i)
dict_keys(['name', 'age', 'gender'])
dict_values(['egon', 18, 'male'])
dict_items([('name', 'egon'), ('age', 18), ('gender', 'male')])
6、循环:
dic = {'name': 'egon', 'age': 18, 'gender': 'male'}
for k in dic:
print(k):name 循环取出字典会取出字典的key
age
gender
dic = {'name': 'egon', 'age': 18, 'gender': 'male'}
for k in dic.values():
print(k):egon 使用values形式能取出来dic的value
18
male
dic = {'name': 'egon', 'age': 18, 'gender': 'male'}
for k in dic.items():
print(k):('name', 'egon') 使用items形式取出的就是元组格式的dic的item,
('age', 18)
('gender', 'male')
7. get取值:get取值使用key,如果有,则取出value,否则为空,不会报错.
dic={'name': 'egon', 'age': 18, 'gender': 'male'}
v=dic.get('xxx')
print(v)=None
4.需要掌握的操作:
4.1dic.fromkeys() 将一个全是key的列表放入一个空字典当key,使用None或者别的数据当value,要使用时再改动.
li=['name','age','gender']
dic={}
dic={}.fromkeys(li,None)
print(dic)
4.2dic.update() 更新字典,将旧字典中与新字典一样key的值覆盖掉,没有的则将key&value加进去
old_dic={'name': 'egon', 'age': 18, 'gender': 'male'}
new_dic={'x':1,'name':'EGON'}
old_dic.update(new_dic)
print(old_dic):{'name': 'EGON', 'age': 18, 'gender': 'male', 'x': 1}
4.3dic.setdefault(key,value):执行完毕后是为了保证字典中必须有这么一个k,如果没有就增加进去,返回增加的value。如果有就返回字典中的值
old_dic={'name': 'egon', 'age': 18, 'gender': 'male'}
old_dic.setdefault('height',2)
print(old_dic)={'name': 'egon', 'age': 18, 'gender': 'male', 'height': 2}
print(old_dic.setdefault('height',2))=2

三:集合类型:
1、用途:
1.1:做关系运算
1.2: 去重
2、定义方式:在{}内用逗号分隔开多个元素,多个元素必须满足以下条件:
2.1 每一个元素必须是不可变类型
2.2 集合内元素不能重复
2.3 集合无序
2.4 d{}默认为字典 s=set{}才是集合
3、常用操作+内置的方法
1、长度len (pythons.intersection(linuxs))
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
print(len(pythons))=6
2、成员运算in和not in
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
print('李铁蛋' in pythons)=Ture
3、|合集并集 (pythons.union(linuxs))
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
linuxs={'kevin','egon','tank','艾利克斯','王铜蛋'}
print(pythons | linuxs)={'赵银蛋', 'kevin', '李铁蛋', '艾利克斯', '王铜蛋', '张全蛋', 'tank', 'egon', 'oldboy'}
4、&交集 (pythons.intersection(linuxs))
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
linuxs={'kevin','egon','tank','艾利克斯','王铜蛋'}
print(pythons & linuxs)={'王铜蛋', '艾利克斯'}
5、-差集(pythons.difference(linuxs))
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
linuxs={'kevin','egon','tank','艾利克斯','王铜蛋'}
print(pythons - linuxs)={'赵银蛋', 'oldboy', '李铁蛋', '张全蛋'}
6、^对称差集(pythons.symmetric_difference(linuxs))
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
linuxs={'kevin','egon','tank','艾利克斯','王铜蛋'}
print(pythons ^ linuxs)={'oldboy', '赵银蛋', 'tank', '张全蛋', 'kevin', '李铁蛋', 'egon'}
7、==
pythons={'李铁蛋','张全蛋','王铜蛋','赵银蛋','oldboy','艾利克斯'}
linuxs={'kevin','egon','tank','艾利克斯','王铜蛋'}
print(pythons == linuxs)=False
8、父集:>,>=(issuperset)
li={'qqq','www','eee'}
lr={'qqq','www'}
print(li >= lr)=Ture
9、子集:<,<=(issubset)
li={'qqq','www','eee'}
lr={'qqq','www'}
print(li <= lr)=False
四:布尔类型:
在条件判断中所有的数据都会转换布尔值
只需记住布尔值为假的数据类型即可:0,None,空

转载于:https://www.cnblogs.com/xiezuodd/p/10220331.html

内容概要:本文系统阐述了Java Persistence API(JPA)的核心概念、技术架构、核心组件及实践应用,重点介绍了JPA作为Java官方定义的对象关系映射(ORM)规范,如何通过实体类、EntityManager、JPQL和persistence.xml配置文件实现Java对象与数据库表之间的映射与操作。文章详细说明了JPA解决的传统JDBC开发痛点,如代码冗余、对象映射繁琐、跨数据库兼容性差等问题,并解析了JPA与Hibernate、EclipseLink等实现框架的关系。同时提供了基于Hibernate和MySQL的完整实践案例,涵盖Maven依赖配置、实体类定义、CRUD操作实现等关键步骤,并列举了常用JPA注解及其用途。最后总结了JPA的标准化优势、开发效率提升能力及在Spring生态中的延伸应用。 适合人群:具备一定Java基础,熟悉基本数据库操作,工作1-3年的后端开发人员或正在学习ORM技术的中级开发者。 使用场景及目标:①理解JPA作为ORM规范的核心原理与组件协作机制;②掌握基于JPA+Hibernate进行数据库操作的开发流程;③为技术选型、团队培训或向Spring Data JPA过渡提供理论与实践基础。 阅读建议:此资源以理论结合实践的方式讲解JPA,建议读者在学习过程中同步搭建环境,动手实现文中示例代码,重点关注EntityManager的使用、JPQL语法特点以及注解配置规则,从而深入理解JPA的设计思想与工程价值。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值