python字典与集合.pdf

所需积分/C币:50 2019-05-13 10:45:15 2.94MB PDF
收藏 收藏
举报

python字典与集合
Python从入门到项目实践 9列表、元组、字典和集合的区别 数据结构 是否可变 是否重复 是否有序 定义符号 列表 可变 可重复 有厅 元组 不可变 可重复 有序 字典 可变 可重复 无序 ikey: valuel 集合 可变 不可重复 无序 } 术语释疑 1字典 字典是一神可变容器模型,且可存储仼意类型对象,如宇符串、数字、元组等其他容器 模型。 2列表 以表格为容器,装载着文字或图表的一和形式,叫列表 3键值对 键值对就是可以根据一个键值获得对应的一个值。 4元组 元组(tupe)是序列结构,与列表类似,也是由系列按特定顺序排列的元素组成。 但是它是不可变序列。通常情况下,元组用于保存程序中不可修改的内容 5索引 序列中的每一个元素都有一个编号,也称为索引。这个索引是从0开始递增的,即下标 为0表示第·个元素,下标为1表示第2个元素,依此类推 6映射 “映射”或者“投影”,需要预先定义投影法则部分的函数后进行运算。囚此"映射″ 计算可以实现跨维度对应。映射可以对非相关的多个集合进行对应的近似运算。 7.交集 进行交集运算时使用“&”符号。几个(两个或两个以上)集合的相交部分即同时属 于儿个集合或同时满足儿个条件的量 17并集 进行并集运算时使用“|”符号。一组集合的并集是这些集合的所有元素构成的集合 而不包含其他元素 18差集 Python从入门到项目实践 进行差集运算时使用“-”符号。一般地,记A,B是两个集合,则所有属于A且不属 于B的元素构成的集合,叫做集合A减集合B(或集合A与集合B之差)。 代码解读 <代码01代码位置:P147> dictionary =1 或者 dictionary = dicto) 可以使用上面两种方法创建空字典。 <代码02代码位置:P148> 01name=['邓肯',"吉著比利',"帕克'] #作为键的列表 02sign=['石佛',妖刀','跑车'] #作为值的列表 03 dictionary dict(zip(name, sign)) #转换为字典 定义两个包括3个元素的列表,再应用dict()函数和zip(函数将前两个列表转换为对应 的字典 <代码03代码位置:P149> dictionary dict fromkeys (list1) 还可以使用dit对象的 fromkey5()方法创建值为空的字典 <代码04代码位置:P149> 01 name tuple=(邓肯',吉诺比利',"帕克') #作为键的元组 02sign=['石佛','妖刀','跑车'] #作为值的列表 03 dicti =iname tuple: sign) #创建字典 通过已经存在的元组和列表创建字典 <代码05代码位置:P150> print("罗宾逊的绰号是:", dictionary[罗宾逊']if'' in dictionary else'我的字典里 没有此人") 在实际开发中,很可能我们不知道当前存在什么键,所以需要避免该异常的产生。具体 的解决方法是使用讦语句对不存在的情况进行处坦,即给个默认值 <代码06代码位置:P152> 01 dictionary={'qq":"4006751966′,明日科计':"8431-84978982,无语":"431-8497898 02 for key, value in dictionary. items( 03 print(key,"的联系电话是", value) 获取到具体的每个键和值,可以使用上面的代码进行遍历。 <代码07代码位置:P152> 01 dictionary=dict((邓肯','石佛'),('吉诺比利',妖刀),("帕克',跑车")) Python从入门到项目实践 82 dictionary["帕克"]="法国跑车”#添加一个元素,当元素存在时,则相当于修改功能 山于在字典中,“键”必须是唯一的,所以如果新添加元素的“键”与已经存在的“键” 重复,那么将使用新的“值”替挨原来该“键”的值,这也相当于修收字典的元素。 <代码08代码位置:P153> 1 dictionary=dict(((邓肯',‘石佛'),(‘吉诺比利',妖刀'"),(帕克',跑车)) 82e1 dictionary["帕克"]#删除一个元素 当字典中的某一个元素不需要时,可以使用del命令将其删除 <代码09代码位置:P153> 01 import random #导入 random标准库 02 randomdict =fi: random randint (10, 100) for i in range (1,5)1 83 print("生成的字典为:", randomdict) 使用字典推导式可以快速生成一个字典,使用上面的代码生成一个包含4个随机数的字 典,其中字典的键使用数字表示。 <代码10代码位置:P155> 01pf=set([邓肯","加内特',"马龙']) #保存大前锋位置的球员名字 02 print(大前锋位置的球员有:',pf,"\n") #输出大前锋的球员名字 使用set(函数创建保存NBA球员位置信息的集合 代码11代码位置:P157> 81pf=set(['邓肯","加内特',马龙']) #保存大前锋位置的球员名字 83cf=set(['邓肯',"奥尼尔','姚明']) #保存中锋位置的球员名字 85 print('交集运算 of cf) #输出既是大前锋又是中锋的球员名字 86 print(并集运算:‘,pf|cf) #输出大前锋和中锋的全部球员名字 87 print('差集运算:',pf-cf) #输出是大前锋但不是中锋的球员名字 在IDLE中创建一个名称为 section_ operate. py的文件,然后在该文件中,定义两个包括 4个元紊的集合,再根据需要对两个集合进行交集、并集和差集运算,并输岀运算结果 英语词汇 value ke 含义:价值,意义,重要性 含义:钥匙,键 热度:★★★★ 热度:★★★★ map dictional 含义:地图,绘制 义:字典 热度:★★★ 热度:★★★★ has p 含义:搞砸,把..弄乱 含义:拉链,一种程序压缩格式 热度:★★★★ 热度:★★★ Python从入门到项目实践 Sign Itcm 含义:签名,符号 含义:项目 热度:★★ 热度:☆ print 含义:输出,打印 含义:为了,由于,对于 热度:★★★★ 热度:★★★★ 含义:列表 含义:在里面 热度:★★★★ 热度:★★★★ tuple rando 含义:元组 含义:随机的 热度:★★★★ 热度:★★★ clear 含义:清除 含义:设置,放置 热度:★★ 热度:★★★★ element 含义:如果,假如 含义:元素 热度:★★★★ 热度:★ g Iteration 含义:得到 含义:迭代 热度:★★★★ 热度:☆★★ default remove 含义:违约,未履行 含义:去除 热度:★★★ 热度:★★★ 扩展学习 1. rozenset0函数—创建已冻结集合 功能: frozenset(函数用于创建不可改变的集合对象,即使是列表或字典也尢法改变 语法: rozenset(iterable]) 参数说明: iterable,可迭代的对象,如列表、字典、元组等 示例: 通过指定的字符串创建不可变集合对象,同时再创建0到9的不可变集合对象,最后对 Python从入门到项目实践 比输出两个不可变集合对象的创建顺序。代码如下: s="mingrisoft fs=frozenset(s) flistnum=frozenset([0, 1, 2, 3, 4, 5,6, 7, 8, 9) fiststrrozenset([m,,n,g,r,"i"s,o,"f","t]) print(str(fs) print(str(flistnum)) 运行程序,得到创建结果 frozenset(ig,'i,r,f,'m,o,t ,'s,ny) frozenset({0,1,2,3,4,5,6,78,9}) 2 range函数—创建一个列表 功能 range(函数用于快速创建个整数列表 语法: range(start, stop step]) 参数说明: start,起始值,默认为0,生成列表可取该值;stop,结束值,生成列表不可取该值; step,步长,列表中每个元素数值的间隔。 示例 输出指定开始和结束范围的连续数字,以及指定范围内的偶数和奇数。代码如下 num1=range(10, 20 num2=range(10) num=range(0, 21, 2) num=range(1, 21, 2) print("输出10到20之间的数(不含20):",end=") for i in num 1 pint(,end="、") print("Yrn输出0到10之间的数(不含10):"end="") for i in num2 print("hn输出0到21之间的偶数:",end="") for i in num 3 print(i ") print("rn输出0到21之间的奇数(不含21):",end=") for i in num print(i,end="、") 运行程序,得到结果 输出10到20之间的数(不含20):10、11、12、13、14、15、16、17、18、19、 输出0到10之间的数(不含10):0、1、2、3、4、5、6、7、8、9 输出0到21之间的偶数:0、2、4、6、8、10、12、14、16、18、20、 输出0到21之间的奇数(不含21):1、3、5、7、9、11、13、15、17、19 Python从入门到项目实践 3et0涵数—创建无序不重复元素集 功能 setO函数用于创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以 计算交集、差集、并集等。 语法 t (iterable 参数说明 iterable,可以迭代的对象。 例 随机生成20个1到19间(含19)的随机数,然后通过setO函数去掉生成的重复数字。 代码如下 mport randal list=ll for i in range(0, 20) list append(random randint( 1, 20) s1=set(list) print(随机后的整数列表"|it) print("去掉重复后的整数列表:",S1) 运行程序,对比完整列表和去重复列表,得到结果 随机后的整数列表9,19,1,6,13,5,5,14,12,16,19,13,15,5,8,11,5,1,16,17] 去掉重复后的整数列表:组1,5,6,8,9,1112,13,14,15,16,17,19} 示例2: 定义一个列表,元素为set(函数创建的集合项,通过循环来一一比对每一个语言与其 他语言之问重复的字符。代码如下 list=[set("python"), set(java), set(asp. net"), set(c++), set(html), set( javascript"), set(sqls erver repeat=l for i in list group Result=D 」= while j<7 result=i list[ if len(result)>0 groupResult. append(result) j+=1 repeat append group result k+=1 for i in repeat rint(i) 运行程序,得到结果: ['n',"t,p"}tt,"h’},t',p" Python从入门到项目实践 {a"},j,'a,v},{v" [{t}{a',"t,'s,'p"}{e,'s" Rcl [{t{"} [{v,'s','r}

...展开详情
试读 9P python字典与集合.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
  • GitHub

    绑定GitHub第三方账户获取
  • 签到新秀

    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 分享王者

    成功上传51个资源即可获取
关注 私信 TA的资源
上传资源赚积分,得勋章
最新推荐
python字典与集合.pdf 50积分/C币 立即下载
1/9
python字典与集合.pdf第1页
python字典与集合.pdf第2页

试读结束, 可继续读1页

50积分/C币 立即下载 >