手机扫描二维码答题
00:00:00
3.8.1必修1 项目八 分析气温数据
录音中...
学习目标:
1.批量数据在程序中的表示
2.访问批量数据的常用程序模式
3.函数的定义和使用
4.理解“自顶向下、逐步求精”的程序设计方法以及嵌套、模块化设计思想。
一、用
列表
表示批量数据:
列表用“[ ]”表示。各数据项
顺序排列
,数据项用
逗号分隔
,数据项可以是
任意数据类型
。
list
=[ 数据项1,数据项2,....]
#创建一个列表list
列表的访问
是按列表名带数字下标号
list[x]
访问。下标是一个整数,有效范围从0到列表的长度减1,list[0]表示列表中的第一个数据项,list[n]表示列表中的第n+1个数据项。
列表名只能是英文字母开头,由英文字母,数字,下划线构成
。
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
例1,创建一个列表,存储数据 t_day = [10, 13, 18,12 ]
#数字类型
例2,创建一个列表,存储字符串 yans = ["red", "green", "yellow"]
#字符类型
例3,创建一个列表,存储字符、数字 xdzx
= ["pxxdzx.net", 1997, 2022]
#混合类型
*
1.
下列建立列表数据表达式正确的是( )
A. class--1=[2201,2202,2203,2204,2205]
B.class_1=["2201","2202",2203,2204,2205]
C.class1=[2201_2202_2203_2204_2205]
D.class1=[2201/2202/2203/2204/2205]
二、实现列表序列元素切片操作(从列表中取不同的元素)
语法格式:
sname
[start : end : step] --->
sname
[参数1:参数2:步长]
理解关键点:列表切片的三个参数。
步长>0时,从左往右切。参数1必小于参数2,若参数1缺省,默认=0;若参数1大于参数2,则返回空。
步长<0时,从右往左切。参数1必大于参数2,若参数1缺省,默认是最大索引号;若参数1小于参数2,则返回空。
各个参数的含义是:
start:表示切片的开始索引位置(包括该位置),此参数也可省略,默认为 0,也就是从序列的开头进行切片;
end:表示切片的结束索引位置(不包括该位置),如果省略,则默认为序列的长度;
step:表示在切片过程隔几个存储位置(包含当前位置)取一次元素,当 step > 1,则切片序列元素,会跳跃取元素。如果省略设置 step 的值,则最后一个冒号就可以省略。
请用python上机练习:
>>>
sname=[10,20,30,40,50,60,70,80,90]
对应索引号为0,1,2,3,4,5,6,7,8
>>>
sname[1] 其结果是[20]
>>>
sname[1:3] 其结果是[20,30]
>>>
sname[:3] 其结果是[10,20,30]
>>>
sname[0:8:2] 其结果是[10,30,50,70]
>>>
sname[::1] 其结果是[10,20,30,40,50,60,70,80,90]
>>>
sname[::-1] 其结果是[90,80,70,60,50,40,30,20,10]
>>>
sname[:6:-1] 其结果是[90,80]
注:参数1省略为最大索引号8,则访问索引号为8和7,但不包含6
>>>
sname[:6:-2] 其结果是[90]
注:参数1省略为最大索引号8,则访问索引只有8,不包含6
>>>
sname[0:6:-1] 其结果是[ ]
*
2.
在列表t_day=[10,13,18,12,16,19]中t_day[4]是指那个数据项?
18
19
16
10
3.
list1 = ['physics', 'chemistry', 1997, 2000,2008,2022]
*
list2 = [5,6,7,8,9,10,11,12,13,14 ]
写输出结果:
list1[3]:
list2[2:7]:
*
4.
[2022真题]下列语句的执行结果为( ) [单选题]
>>>Color=["red","blue", "green","black"]
>>>Color[2]
A "red"
B "blue"
C "green"
D "black"
三、列表应用:
(1)用列表表示气温数据、计算平均气温
示例1:
t_day=[10,13,18,12,14] #
某地连续五天的气温列表
avg=(t_day[0]+t_day[1]+t_day[2]+t_day[3]+t_day[4])/5
print('平均气温=',avg)
输出结果:平均气温= 13.4
示例2:
t_day=[10,13,18,12,14]
avg=sum(t_day)/len(t_day)
print('平均气温=',avg)
输出结果:平均气温= 13.4
*在Python环境下调试两种不同的求平均的方法*
Sum内置函数:
求列表中数值数据的累加和
len内置函数:
求列表中数据项的个数
(2)计算月平均气温
已知某地月气温数据列表[34,32,33,33,35,36,36,36,35,34,33,32,32,32,31,32,32,30,31,30,30,31,32,29,27,29,31,32,30,26,26]
方法1、利用
下标访问法
计算平均气温。
程序如下:
方法2、利用序列迭代法计算:
四、自定义函数应用:
方法3:使用用户自定义函数计算平均值
,格式如下:
def getavg(L):
#
自定义函数名为“
getavg
”,“L”任意列表名。
return sum(L)/len(L)
例:求某月平均气温
函数的定义:
格式:
def 函数名(参数):
函数体
函数体中一般包含return语句,return语句作用是结束函数的执行,返回函数的值。
例1:要计算3!+5!-4!,可以定义一个函数,用于计算n!,必须有一个参数n的值,返回值作为计算结果。
例2:
以上程序为程序内部调用
也可将上述程序拆分为以下两个文件调用,这是程序模块化思想。
知识拓展:
将多个自定义函数写入一个文件中,进行调用执行。
1、在自定义函数中定义多个函数:(文件名为sm.py)
2、调用多个函数的程序应用,要求两个程序文件在同一目录中。
评价对象得分
字体大小