12月6日

一、review复习巩固第一周的内容

day 1 —基础语法、输入和输出、变量

print(100)

print(‘hello world’)

print(100);print(‘hello world’)

#int、float、str(字符串)、bool、NoneType

类型名(数据)、type(获取某一种数据类型,或者说是判断某种数据的类型)

if type(100)==int:

​ print(‘整数’)

print(100)

print(10,20,30)

print(200,end=‘;’)

print(300) #200;300

print(11,22,33,sep=‘+’) #11+22+33

#变量=input(‘请输入账号:’)

print(变量)

age=int(input(‘请输入年纪:’))

print(age,type(age))

#变量名=数据 标识符(字母_数字)

day2:–运算符和分支

数学运算符:+、-、*、/、%、//、**

%取余,判断整数关系看一个数能不能被另一个数整除;看个位数是多少

//整除,商向小取整;想让他的结果直接是整数;砍掉低位数保留高位数

%//配合可以看个位数、十位数····分别是什么

比较运算符:>,<,>=,<=,==,!=:0<x<1

逻辑运算符:and,or,not

赋值运算符;=,+=,*=,/=,%=,//=,**=

分支;if

​ if—else

​ if–elif—else

day3、4–循环

for 变量 in 序列:

​ 循环体

else:

​ 代码段 (前面是自然死亡,不影响else执行,遇到break不执行)

while 条件语句:

​ 循环体

else:

​ 代码段

continue —这一次循环结束,直接进入下次循环

break —结束整个循环

range函数

range(n)

range(m,n)

range(m,n,step)

二、列表

1.容器型数据类型(序列)

*变量从是否是容器分为:非容器型数据类型的变量和容器型数据类型变量

*非容器型数据类型的变量 — 一个盒子 里面只有一个格子,所以同一时间只能保存一个数据。

​ 例如:int 、 float 、bool 、None

*容器型数据类型的变量 — 一个盒子里面有多个格子,每个格子可以存储不一样的数据,所以同一时间可以保存多个数据。

​ 例如:list 、 dict 、 tuple 、set、str等

容器处理批量数据会比单独储藏变量方便很多:

​ stu1=90

​ stu2=95

​ stu3=82

​ stu4=77

用容器型处理:

scores=[90,95,82,77]

print(sum(scores))

print(max(scores),min(scores))

2.什么是列表(list)

*列表是容器型数据类型,一个列表可以保存多个数据,将[]作为容器标志,里面多个元素用逗号隔开。

​ eg:[元素1,元素2,元素3,·····]

*列表是可变的(可变指的是元素的个数,和元素的顺序、还有值-----说明支持增删改)

*列表中的元素:任何类型的数据都可以作为列表的元素。(没有要求)

*元素 —指的是容器中每个独立的数据

#空列表

list1=[]

print(list1)

#list2是一个列表,列表中只有一个元素

list2=[19]

list3=[10,20,89]

print(list3)

#同一个列表中的元素可以是不同类型的数据

list4=[10,12.8,True,‘abc’,[100,200]]

print(list4)

三、获取列表元素

1.获取单个元素

语法:

列表[下标]

说明:

列表 —任何结果是列表的表达式,例如 :保存列表的变量或者是具体的列表数据

[] — 固定写法

下标 —下标(又叫索引)就是有序序列中元素的位置信息。python中有序序列中元素的下标有两种:

​ 第一种:从前往后,从0开始一次增加;

​ 第二种:从后往前,从-1开始依次减少。

注意:下标不能越界

2.切片 —获取部分元素

1)语法1:

列表[开始下标:结束下标:步长]

2)确定是否可以获取到数据:从开始下标到结束下标的方向如果和步长对应的方向(步长为正表示从前往后,步长为负表示从后往前)一致就可以获取到数据,否则结果就是空列表。

3)确定有效范围:开始下标对应元素可以取到,结束下标对应的元素取不到。—》[开始下标,结束下标)

4)确定切片结果:先看能不能取到,看开始和结束的方向和步长是否一致,如不一致就不管了因为就是空值。反之按照步长的绝对值去取。

#开始下标到结束下标的方向如果和步长对应的方向一致,就可以取到数据

#开始下标到结束下标的方向如果和步长对应的方向不一致,一定取不到数据

print(heroes[1:4:-1])

print(heroes[5:1:2])

# 练习2:写切片获取指定内容
heroes = ['李白', '李信', '张飞', '关羽', '刘备', '安琪拉', '瑶', '孙膑']
# ['张飞', '关羽', '刘备']           √
# ['李白', '李信', '张飞', '关羽']    √
# ['瑶', '安琪拉', '刘备']          √
# ['李信',  '关羽',  '安琪拉']       √
# ['孙膑', '安琪拉']               √
# ['李信', '瑶']                 √

print(heroes[2:5:1])
print(heroes[0:4:1])
print(heroes[-2:3:-1])
print(heroes[1:6:2])
print(heroes[-1:4:-2])
print(heroes[1:-1:5])

5)语法二:省略步长

列表[开始下标:结束下标]-----步长为1

heroes = [‘李白’, ‘李信’, ‘张飞’, ‘关羽’, ‘刘备’, ‘安琪拉’, ‘瑶’, ‘孙膑’]

print(heroes[1:3]) #[‘李信’,‘张飞’]

6)语法3:省略开始下标

列表[:结束下标:步长]/列表[:结束下标]

**如果步长为正,从第一元素开始往后取;如果步长为负,就从后往前取

print(heroes[:3]) #[‘李白’, ‘李信’, ‘张飞’]

print(heroes[:3:-1]) #[‘孙膑’,‘瑶’,‘安琪拉’,‘刘备’]

print(heroes[:-2:2]) #[‘李白’, ‘张飞’ ,‘刘备’]

7)语法4:省略结束下标

列表[开始下标::步长] / 列表[开始下标:]

**如果步长为正,从开始下标开始从前往后取取完为止;如果步长为负,就从开始下标开始从后往前取取完

print(heroes[3:]) #[‘关羽’, ‘刘备’, ‘安琪拉’, ‘瑶’, ‘孙膑’]

print(heroes[-2::-2]) #[‘瑶’,‘刘备’,‘张飞’,‘李白’]

# 练习:推算以下表达式的打印结果
heroes = ['李白', '李信', '张飞', '关羽', '刘备', '安琪拉', '瑶', '孙膑']
print(heroes[2:5])            #['张飞', '关羽', '刘备']      √
print(heroes[3::-2])          #['关羽''李信']               √
print(heroes[-3::-1])         #['安琪拉','刘备','关羽','张飞','李信','李白']   √
print(heroes[:-4:2])          #['李白', '张飞']               √
print(heroes[1::3])           #['李信', '刘备', '孙膑']         √
print(heroes[:-2])           #['李白', '李信', '张飞', '关羽', '刘备', '安琪拉']   √

3.遍历 —一个一个的全部取出来,取得方式是一次取一个

1)方法一 — 直接获取元素

for 变量 in 列表:

​ 循环体

**变量依次获取的就是列表中的每个元素

nums=[23,8.9,90,89,78.3]

for x in nums:

​ print(‘x:’,x)

2)方法二 — 通过获取每个元素的下标来获取元素

for 变量 in range(列表长度):

​ 循环体

**变量依次获取的时候列表中元素的下标

补充:len(列表) — 获取列表的长度

for x in range(len(nums)):

​ print(x,nums[x])

# 练习:scores保存所有学生的分数
# 1)统计不及格学生人数
# 2)计算学生平均分
scores = [90, 78, 54, 67, 88, 30, 59]

四、增删改

1.增 — 添加元素

‘’’

1)列表.append(元素) --将元素添加到列表的最后

‘’’

list1=[10,20]

list1.apprnd(100)

print(list1) #[10,20,100]

2)列表. insert(下标,元素) – 将元素插入到指定下标前

nums=[10,20,30,40]

print(nums)

nums.insert(1,100)

print(nums)

2、删 --删除元素

1)del 列表[下标] ----删除指定下标对应的元素

tvs=[‘海贼王’,‘七龙珠’,‘琅琊榜’,‘名侦探柯南’,‘还珠格格’]

del tvs[1]

print(tvs)

del tvs[-1]

print(tvs)

2)列表. remove(元素) —删除指定元素

**如果元素不存在会报错;如果元素有多个,只删除最前面的那个。

tvs=[‘海贼王’,‘七龙珠’,‘琅琊榜’,‘名侦探柯南’,‘还珠格格’]

tvs.remove(‘还珠格格’)

3)

列表.pop() —取出最后一个元素,并且返回

列表.pop(下标) —取出指定下标对应的元素,并且返回

remove

3.改

列表[下标]=值 —将列表中指定下标对应的元素改成指定的值

movies = [‘肖生克的救赎’,‘海上钢琴师’,‘长津湖’,‘罗小黑战记’]

movies[0]=‘V字仇杀队’

print(movies)

eg:

scores = [90,34,89,55,88]

#将scores中所有不及格的分数改成0分 -->[90,0,89,0,88]

#将scores中所有不及格的分数改成0分    -->[90,0,89,0,88]
scores = [90,34,89,55,88]

for index in range(len(scores)):
    if scores[index]<60:
        scores[index]=0
print(scores)
五、in操作

元素 in 列表 — 判断列表中是否存在指定的元素

元素 not in 列表 — 判断列表中是否不存在指定元素

布尔值

print(10in[10,20,30]) #True

print([10,20]in[10,20,30]) #False

print([10,20]in[[10,20],30]) #True

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值