(共29张PPT)
第三节
程序设计基本知识
—2.3.1数据类型
高中信息技术
人民教育出版社
第二章
算法与程序实现
数据类型转换
案例引入
数据类型
综合应用
案例引入
案例引入
一
借典型问题,
抛砖引玉。
引用经典,
向深远处引领。
设计意图
设计意图
案例引入
编写一判断某年是否为闰年的程序
李明是某年的2月29日出生,四年才能过一次生日,请你帮他找出以后能过生日的年份。
案例引入
一
通常一年有365日,经科学统计一年并不是整数,而是约等于365.2422日,为此设定闰年来解决,判断闰年的口诀是:四年一闰,百年不闰,四百年再闰。
2、分析问题
案例引入
一
分析问题
解决问题
3、设计算法
案例引入
一
Teaching
Refletion
4、程序调试
体验程序
加深理解
案例引入
一
探究思考
复杂的条件语句所构成的元素有哪些?
加深理解上述解决问题过程
输入的任意一年能否是小数?
输入的任意一年能否是大写数字(字符)?
数据类型
数据类型
二
常
用
数据类型
共五类
数据类型
类型标识符
特点
整型
int
整数可以任意大,可正可负
浮点型
float
可以用浮点型表示小数
字符串型
str
用('
')或者(“
”)括起来的一串字符,里面的内容可以是文字、数字、符号等,同时使用反斜杠(
\
)转义特殊字符
布尔型
bool
用于逻辑判断,只有两个值,表示真的True和表示假的False
列表
list
用来存放一组数据的序列,用一组[
]括起来,列表里可以放各种数据,中间以逗号分隔。(本节课不讲,以后重点讲解)
数据类型—int
float
二
python语言中,整型和浮点型可以统称为数值型或数字型
1、整型(int):整型的意义和数学中的整数是相同的,只包括正整数、负整数和0。
2、浮点型(float):可以表示整数,也可以表示小数,就是小数,因为小数可以写成科学计数法,1.23e8与12.3e7是等价的,小数点可以随便移动,所以称浮点型
(一)整型
浮点型
数据类型—程序实例
二
(重温2.1中的案例)
要开运动会,老师统计班里的田径擅长人才,擅长田赛类的有一半同学举手,擅长径赛类的有五分之二的学生举手,老师发现有7
位学生两方面都擅长,同时也知道了这两项都不擅长的人,选做拉拉队,如果班里有54名学生,你知道拉拉队有几位同学吗?
(一)整型
浮点型
现实事物或现象
列举的数据
数据类型
擅长田赛类
a=
54/2
人数应是整型
擅长径赛类
b=54
2/5
人数应为整型
两项都擅长的
7
整型
两项都不擅长
d=
54-(a+b-7)
人数应为整型
对应的数据类型分析
数据类型—程序实例
二
(一)整型
浮点型
出现小数怎么改写,如何定义数据类型?
调试程序结果:
数据类型—程序实例
二
求圆的周长及面积
PI=3.1415926
r=float(input("请输入半径"))
l=2
PI
r
s=PI
r
r
print("请输出圆的周长",l)
print("请输出圆的面积",s)
圆的半径定义为浮点型
(一)整型
浮点型
数据类型—字符型
二
字符串就是普通的文本,用双引号或者引号括起来。比如说“你好”,‘123456’都表示字符串。例如身份证号,序列号,考籍号,是用数字表示的字符串型数据,Python语言中加了引号的‘1001’不能进行算术加减运算的,不是数字型而是字符串型。
(二)字符串型
数据类型—布尔型
二
(三)非此即彼——布尔型
在Python中,使用布尔型数据来表达这种逻辑判断状态。布尔型只有对错两种值,分别用True和False表示(注意大写)。
数据类型转换
数据转换—整数型与浮点型转换
三
1.整数型与浮点型转换
数字型数据转换的函数很多,常用的有Int(x),float(x)。
整型是没有办法处理小数的。例如:接收键盘输入的信息,使用int()可以转成整数,但是要对小数处理,要转成浮点型,需要用float()函数来帮忙。
python可以通过相关函数进行类型转换。
数据转换—整数型与浮点型转换
三
1.整数型与浮点型转换
程序示例:
数据转换—整数型与浮点型转换
三
1.整型与浮点型转换
应用type()函数:
数据转换—数字型与字符串转换
三
2.数字型与字符串转换
函
数
作
用
str(x)
将
x
转换为字符串
repr(x)
将
x
转换为表达式字符串
eval(str)
计算在字符串中的有效
Python
表达式,并返回一个对象
chr(x)
将整数
x
转换为一个字符
ord(x)
将一个字符
x
转换为它对应的整数值
hex(x)
将一个整数
x
转换为一个十六进制字符串
oct(x)
将一个整数
x
转换为一个八进制的字符串
常
用
函
数
数据转换—数字型与字符串转换
三
2.数字型与字符串转换
设计算法:
分
2
次接收输入的数值,使用chr()转成ASCII字符,并按一定的顺序排列输出。
数据转换—数字型与字符串转换
三
ASCII码
在python语言中,所有字符都是采用ASCII码使用指定的7位二进制数组合来表示128种可能的字符。
综合应用
综合应用
四
知识小结
(一)数据类型转换:要转换的类型(数据)
要把num01转换为整数:int(num01)
要把num01转换为浮点数:float(num01)
要把num01转换为字符串:str(num01)
要把nun01转换为布尔类型:bool(num01)
综合应用
四
知识小结
(二)实例:
print(int("12345")
+
1)
print(float("12.345")
+
1.187)
print(str(123)
+?"456")
print(bool(1))?#只要不是零转换出来的都是True,0是False
print(int(123.456))?#转换为去除小数点后面的数值
print(int("Sandy"))?#不能转换,不属于数字基本要求
注意:在数据类型转换的时候,不是所有的转换都能成功,需要做异常处理。
?
综合应用
四
整合运用
多次运行左侧程序,输入不同的数字,数字范围选择0~255之间,就可以生成不同的字符图形,通过type(),查看数值类型
a=int(input(‘请输入第一个0-255之间的数:’))
#输入:
b=int(input('请输入第二个0-255之间的数:')
)
#输入:print(chr(b),chr(a),chr(a),chr(a),chr(b))
print(chr(a),chr(b),chr(a),chr(b),chr(a))
print(chr(a),chr(a),chr(b),chr(a),chr(a))
print(chr(a),chr(b),chr(a),chr(b),chr(a))
print(chr(b),chr(a),chr(a),chr(a),chr(b))
综合应用
四
整合运用
多次运行左侧程序,输入不同的数字,数字范围选择0~255之间,就可以生成不同的字符图形,通过type(),查看数值类型
谢谢2.3.1程序设计基本知识——数据类型
拓
展
练
习
题
一、读下列程序,写出下列程序代码运行结果
1、
a=int(input("请输入a="))
#
输入9
b=int(input("请输入b="))
#
输入4
print("a+b=",a+b)
print("a-b=",a-b)
2、
r1=input("输入外圆的直径:")
r2=input("输入内圆的直径:")
r1=eval(r1)/2
#
求外圆半径
r2=eval(r2)/2
#
求内圆半径
s1=r1
r1
3.14
#
求外圆面积
s2=r2
r2
3.14
#
求内圆面积
print("外圆的面积=",s1)
print("内圆的面积=",s2)
s3=s1-s2
#
求圆环面积
print("圆环的面积=",s3)
3、
a=int(input(‘请输入第一个0-255之间的数:’))
#输入:230
b=int(input('请输入第二个0-255之间的数:')
)
#输入:47
print(chr(b),chr(a),chr(a),chr(a),chr(b))
print(chr(a),chr(b),chr(a),chr(b),chr(a))
print(chr(a),chr(a),chr(b),chr(a),chr(a))
print(chr(a),chr(b),chr(a),chr(b),chr(a))
print(chr(b),chr(a),chr(a),chr(a),chr(b))
二、读下列程序,按第一条语句示例,完成后面的解释,写在横线上
print
(bool(1))
#
测试数值1的输出
print
(bool(0))
#
测试
print
(bool(100))
#
测试
三、读下列程序,按后面的解释,补充前面的语句,完成横线部分。
print
(bool('1'))
#
测试字符‘1’的输出
print
(bool('0'))
#
测试字符‘0’的输出
print
#
测试非‘1’字符的输出
print
#
测试空字符的输出
答案:
一、略,读程序有问题,可直接运行得到结果。
二、
print
(bool(1))
#
测试数值1的输出
print
(bool(0))
#
测试数值0的输出
print
(bool(100))
#
测试非数值1的输出
三、
print
(bool('1'))
#
测试字符‘1’的输出
print
(bool('0'))
#
测试字符‘0’的输出
print
(bool('abc'))
#
测试非‘1’字符的输出
print
(bool(''))
#
测试空字符的输出教学设计
课例名称
2.3.1程序设计基本知识——数据类型
学段学科
高中
信息技术
教材版本
人教版2019第1版
章节
第二章
第三节
年级
高一
核心素养目标
1、关键能力:掌握python语言基本知识,体验通过编程解决问题的基本过程。针对问题进行需求分析,明确需要解决的关键问题,判断、分析与综合各种信息资源,制定解决问题的相关算法。2、必备品格:夯实基础,严谨认真对待程序的书写,注重细节。深化利用计算机程序解决社会生活中的实际问题的认识,增强计算思维。3、价值观念:提高应用计算机编程的的兴趣,形成对计算机前沿技术探索的强烈要求,增强信息意识。
教学重难点
1、教学重点:python掌握语言的常用数据类型。2、教学难点:数据类型的转换,从实际问题中提炼算法。
教材分析
本节主要学习程序设计基本知识,引导学生通过解决简单的问题,掌握程序设计的基本方法。在程序设计中需要确定数据类型。每一个数据属于一个特定的数据类型,不同的数据类型所执行的运算与处理操作不尽相同。本小节书中首先列举了常用的数据类型,这是本课的重点。接着,通过实践活动“确定数据类型”,最后引入部分数据类型转换函数,用于实现数据类型的强制转换,这是本课的难点。通过对教材的分析,在授课时拓展了实例与更多的相关知识。
教学策略
避免简单的代码训练,采用灵活的方法,鼓励学生在问题解决中接受知识。教师故意设置一些“障碍点”,让学生分析原因,在修改错误中完善程序,提高解决问题的能力。在实践活动中鼓励学生多交流研讨,在互助中提升发展。
一、案例引入编写一判断某年是否为闰年的程序李明是某年的2月29日出生,四年才能过一次生日,请你帮他找出以后能过生日的年份。探究思考:1、加深理解上述解决问题过程2、输入的任意一年能否是小数?3、输入的任意一年能否是大写数字(字符)?4、复杂的条件语句所构成的元素有哪些?设计意图:从案例的分析到给出代码,主要是让学生经历计算机解决问题的全过程,发展计算思维,引出本课所学内容。二、学习新知(一)数据类型:1、常用数据类型数据类型类型标识符特点整型int整数可以任意大,可正可负和零浮点型float可以用浮点型表示小数字符串型str用('
')或者(“
”)括起来的一串字符,里面的内容可以是文字、数字、符号等,同时使用反斜杠(
\
)转义特殊字符布尔型bool用于逻辑判断,只有两个值,表示真的True和表示假的False列表list用来存放一组数据的序列,用一组[
]括起来,列表里可以放各种数据,中间以逗号分隔。(本节课不讲,以后重点讲解)2、项目分析
项目1:
(重温2.1中的案例)要开运动会,老师统计班里的田径擅长人才,擅长田赛类的有一半同学举手,擅长径赛类的有五分之二的学生举手,老师发现有7位学生两方面都擅长,同时也知道了这两项都不擅长的人,选做拉拉队,如果这个班有54名学生,你知道拉拉队有几位同学吗?对应的数据类型分析现实事物或现象列举的数据数据类型擅长田赛类a=
54/2人数应是整型擅长径赛类b=54
2/5人数应为整型两项都擅长的7整型两项都不擅长的d=
54-(a+b-7)人数应为整型程序代码:a=50/2
b=50
2/5
c=a+b-7d=
50-c
print(“拉拉队人数是”,d)
调试程序结果:思考:项目2:计算圆的周长及面积PI=3.1415926r=float(input("请输入半径"))l=2
PI
rs=PI
r
rprint("请输出圆的周长",l)print("请输出圆的面积",s)(二)数据类型转换1、整数型与浮点型转换
python可以通过相关函数进行类型转换。程序实例:2.数字型与字符串转换函
数作
用str(x)将
x
转换为字符串repr(x)将
x
转换为表达式字符串eval(str)计算在字符串中的有效
Python
表达式,并返回一个对象chr(x)将整数
x
转换为一个字符ord(x)将一个字符
x
转换为它对应的整数值hex(x)将一个整数
x
转换为一个十六进制字符串oct(x)将一个整数
x
转换为一个八进制的字符串项目示例:设计算法:分
2
次接收输入的数值,使用chr()转成ASCII字符,并按一定的顺序排列输出。探究:尝试写出相应的代码,注意程序书写规范。
三、综合应用:(一)数据类型转换:要转换的类型(数据)要把num01转换为整数:int(num01)要把num01转换为浮点数:float(num01)要把num01转换为字符串:str(num01)要把nun01转换为布尔类型:bool(num01)(二)实例:print(int("12345")
+
1)print(float("12.345")
+
1.187)print(str(123)
+?"456")print(bool(1))?#只要不是零转换出来的都是True,0是Falseprint(int(123.456))?#转换为去除小数点后面的数值print(int("Sandy"))?#不能转换,不属于数字基本要求注意:在数据类型转换的时候,不是所有的转换都能成功,需要做异常处理。(三)项目实例:多次运行下列程序,输入不同的数字,数字范围选择0~255之间,就可以生成不同的字符图形,通过type(),查看数值类型a=int(input(‘请输入第一个0-255之间的数:’))
#输入:b=int(input('请输入第二个0-255之间的数:')
)
#输入:print(chr(b),chr(a),chr(a),chr(a),chr(b))print(chr(a),chr(b),chr(a),chr(b),chr(a))print(chr(a),chr(a),chr(b),chr(a),chr(a))print(chr(a),chr(b),chr(a),chr(b),chr(a))print(chr(b),chr(a),chr(a),chr(a),chr(b))
复杂的条件语句所构成的元素有哪些?
出现小数怎么改写,如何定义数据类型
半径是什么类型?