大数协python训练营task05学习笔记

一、学习知识点概要、
(一)字典
(二)集合
(三)序列
二、学习内容
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、学习问题与解答
(一)字典
练习题:
1.字典基本操字典内容如下:

 dic = {'python': 95,'java': 99,'c':100 }

用程序解答下面的题目
(1)字典的长度是多少

dic = {'python': 95,'java': 99,'c':100 }
print(len(dic))
#3

(2)请修改java这个key对应的value值为98

#对字典里value的修改,通过key才可以
dic = {'python': 95,'java': 99,'c':100 }
dic['java'] = 98
print(dic)
#{'python': 95, 'java': 98, 'c': 100}

(3)删除c这个key

dic = {'python': 95,'java': 99,'c':100 }
del dic['c']
print(dic)
#{'python': 95, 'java': 99}

(4)增加一个key-value对key值为php,value是90

dic = {'python': 95,'java': 99,'c':100 }
dic['php'] = 90
print(dic)
#{'python': 95, 'java': 99, 'c': 100, 'php': 90}

(5)获取所有的key值,存储在列表里

dic = {'python': 95,'java': 99,'c':100 }
lst = list(dic.keys())
print(lst)
#['python', 'java', 'c']

(6)获取所有的value值,存储在列表里

dic = {'python': 95,'java': 99,'c':100 }
lst = list(dic.values())
print(lst)
#[95, 99, 100]

(7)判断javascript 是否在字典中

dic = {'python': 95,'java': 99,'c':100 }
print('javascript' in dic)
#False

(8)获得字典里所有value的和

dic = {'python': 95,'java': 99,'c':100 }
print(sum(dic.values()))
#294

(9)获取字典里最大的value

dic = {'python': 95,'java': 99,'c':100 }
print(max(dic.values()))
#100

(10)获取字典里最小的value

dic = {'python': 95,'java': 99,'c':100 }
print(min(dic.values()))
#95

(11)字典dic1={php:97},将dic1的数据更新到dic中

dic = {'python': 95,'java': 99,'c':100 }
dic1 = {'php': 97}
dic.update(dic1)
print(dic)
#{'python': 95, 'java': 99, 'c': 100, 'php': 97}

2.字典中的value
(1)有一个字典,保存的是学生各个编程语言的成绩,内容如下

 data = {
            'python': {'上学期":'90’,'下学期":'95}.
            'c++': ['95''96''97']'java':[{'月考:90,"期中考试':'94’,'期末考试":
 '98'}]
             }

各门课程的考试成绩存储方式并不相同,有的用字典,有的用列表,但是分数都是字符串类型,请实现函数transfer_score(score_dict),将分数修改成int类型

def transfer_score(data): 
# your code here
#i cannot not understand the answer>_<
#i will accomplish it soon

(二)集合
1.怎么表示只包含一个数字1的元组。

{1}

2.创建一个空集合,增加{‘x’,‘y’,‘z’}三个元素。

a=set()#创建一个空集
a.add('x')
a.add('y')
a.add('z')
print(a)
#{'z', 'x', 'y'}

3.列表['A’,'B’,‘A’,‘B’]去重。

a=set(("A","B","A","B")) #很多次运行不了,原来得用双引号
print(a)
#{'B', 'A'}

4.求两个集合{6,7,8},{7,8,9}中不重复的元素
(差集指的是两个集合交集外的部分)。

A={6, 7, 8}
B={7, 8, 9}
(A|B)-(A&B)
#{6, 9}

5.求{‘A’,‘B’,‘C’}中元素在{‘B’,‘C’,‘D’}中出现的次数。

x={'A','B','C'}
y={'B','C','D'}
print(len(x&y))#这个做法不知道对不对,找出相同的元素,然后求个数
#2

(三)序列
1.怎么找出序列中的最大、小值?
max(seq)
min(seq)
2.sort()和sorted()区别。
sort()是list内置函数,而sorted()是全局函数
sort()会对原列表进行修改,而sorted()不会
3.怎么快速求1到100所有整数相加之和?

sum = 0
for i in range(1,101):
    sum = sum + i
print(sum)
#5050

4.求列表[2,3,4,5]中每个元素的立方根。

[item for item in map(lambda x:pow(x,1/3), [2,3,4,5])]
#[1.2599210498948732, 1.4422495703074083, 1.5874010519681994, 1.7099759466766968]
#map函数

5.将[‘x’,‘y’,‘z’]和[1,2,3]转成[(‘x’,1),(‘y’,2),(‘z’,3)]的形式.

a=['x','y','z']
b=[1,2,3]
c=zip(a,b)
print(list(c))
#[('x', 1), ('y', 2), ('z', 3)]

四、学习思考与总结
1.字典最后一道要改类型,不太理解,看了别的代码也有点懵,希望自己能静下心再好好看看。
2.每次做完都动力满满,想继续做下一篇,加油!再接再厉哈哈😃
3.打卡后去学别的编程感觉更好。
4.最近要考试,也要好好复习功课了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值