风变编程python小课课件_【风变编程】第五课笔记

python基础语法

第五课

一、列表(list)【可边长数组】

(一)列表中变量类型“可不唯一”

(二)元素提取,“左闭右开”

(三)切片与取一个元素,“返回值的类型不一样”

(四)append()方法,只能在最后添加“一个”变量

(五)del,删除元素

二、字典

(一)len()函数

(二)更改值

(三)提取元素

(四)删除与增加键值对

三、列表与字典的异同

(一)列表中元素有序,字典中元素无序

(二)都支持任意嵌套

四、补充:元组

INF、练习题

(一)找到那只狼

INF+1、练习题答案

(一)找到那只狼

第五课

链接:[ 全文章目录 ]

一、列表(list)【可边长数组】

(一)列表中变量类型“可不唯一”

list1 = ['小明', 18, 1.70]

print(list1)

输出:

['小明', 18, 1.7]

(二)元素提取,“左闭右开”

list2 = [5,6,7,8,9]

print(list2)

print(list2[:])

print(list2[2:])

print(list2[:2])

print(list2[1:3])

print(list2[2:4])

输出:

[5, 6, 7, 8, 9]

[5, 6, 7, 8, 9]

[7, 8, 9]

[5, 6]

[6, 7]

[7, 8]

(三)切片与取一个元素,“返回值的类型不一样”

students = ['小明','小红','小刚']

print(type(students[2]))

print(type(students[:2]))

输出:

(四)append()方法,只能在最后添加“一个”变量

list3 = [1,2]

list3.append(3)

print(list3)

list3.append([4,5])

print(list3)

输出:

[1, 2, 3]

[1, 2, 3, [4, 5]]

(五)del,删除元素

students = ['小明','小红','小刚','小美']

del students[0]

print(students)

输出:

['小红', '小刚', '小美']

二、字典

b358f71b4d274a14b7f5313884e6f065.jpg

(一)len()函数

列表的长度是 元素 个数;字典的长度是 键值对 个数

students = ['小明','小红','小刚']

scores = {'小明':95,'小红':90,'小刚':90}

print(len(students))

print(len(scores))

输出:

3

3

(二)更改值

字典中的键具备唯一性,键唯一,值可重复。

也就是说字典里不能同时包含两个’小明’的键,但却可以有两个同为90的值。

但是,你输入了相同的键,那么字典里原来这个键对应的值会被替换掉

scores = {'小明':95,'小红':90,'小刚':90}

scores['小刚'] = 92

print(scores)

输出:

{'小明': 95, '小红': 90, '小刚': 92}

(三)提取元素

scores = {'小明': 95, '小红': 90, '小刚': 90}

print(scores['小明'])

输出:

95

(四)删除与增加键值对

scores = {'小明': 95, '小红': 90, '小刚': 90}

del scores['小明']#删除

print(scores)

scores['小明'] = 100#增加

print(scores)

输出:

{'小红': 90, '小刚': 90}

{'小红': 90, '小刚': 90, '小明': 100}

三、列表与字典的异同

(一)列表中元素有序,字典中元素无序

这也是为什么两者数据读取方法会不同的原因:

列表有序,要用 偏移量定位 ;字典无序,便通过 唯一的键来取值 。

students1 = ['小明','小红','小刚']

students2 = ['小刚','小明','小红']

print(students1 == students2)

#false

scores1 = {'小明':95,'小红':90,'小刚':100}

scores2 = {'小刚':100,'小明':95,'小红':90}

print(scores1 == scores2)

#true

输出:

False

True

(二)都支持任意嵌套

除之前学过的数据类型外,列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表。

students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]

print(students[1][1])

输出:

小兰

此时列表嵌套列表,变成了二维数组

同理,字典嵌套字典:

scores = {

'第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},

'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}

}

print(scores['第一组']['小刚'])

输出:

100

混合嵌套:

students = {

'第一组':['小明','小红','小刚','小美'],

'第二组':['小强','小兰','小伟','小芳']

}

scores = [

{'小明':95,'小红':90,'小刚':100,'小美':85},

{'小强':99,'小兰':89,'小伟':93,'小芳':88}

]

print(students['第一组'][2])

print(scores[0]['小刚'])

四、补充:元组

元组由小括号框起,除 不能改变元素 外,其他性质与列表相似

tuple1 = ('A','B')

INF、练习题

(一)找到那只狼

练习目标

在层层嵌套的各种数据类型中,准确地提取出你需要的数据。

练习要求

在未来世界,一个新建的童话镇吸引了不少人入住。

不过,在人群里隐藏着一只狼,会威胁大家的安全。

童话镇的镇长希望你能找到它,并揭发其身份。

用程序语言就是说:列表中有个字符串是“狼”,将其打印出来吧。

#变量定义

townee = [

{'海底王国':['小美人鱼''海之王''小美人鱼的祖母''五位姐姐'],'上层世界':['王子','邻国公主']},

'丑小鸭','坚定的锡兵','睡美人','青蛙王子',

[{'主角':'小红帽','配角1':'外婆','配角2':'猎人'},{'反面角色':'狼'}]

]

INF+1、练习题答案

(一)找到那只狼

考察点:

1.数据的嵌套

2.数据的提取

townee = [

{'海底王国':['小美人鱼''海之王''小美人鱼的祖母''五位姐姐'],'上层世界':['王子','邻国公主']},

'丑小鸭','坚定的锡兵','睡美人','青蛙王子',

[{'主角':'小红帽','配角1':'外婆','配角2':'猎人'},{'反面角色':'狼'}]

]

print(townee[5][1]['反面角色'])

链接:[ 全文章目录 ]

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值