python程序设计及上机实验教程第3章Python数字类型_第1页
python程序设计及上机实验教程第3章Python数字类型_第2页
python程序设计及上机实验教程第3章Python数字类型_第3页
python程序设计及上机实验教程第3章Python数字类型_第4页
python程序设计及上机实验教程第3章Python数字类型_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计及上机实验PythonPython数字类型第3章3.1数字类型1.2Python环境的准备1.3课后作业int(整型)、float(浮点型)、complex(复数型)、bool(布尔型)的应用本章重点本章难点计算机能处理各种类型的数据,包括数值、文本等,不同的数据属于不同的数据类型,支持不同的操作。Python语言提供了丰富的内置标准数据类型,用于有效地处理各种类型的数据,本章主要讨论跟数字有关的数据类型,即整型(int)、浮点型(float)、复数型(complex)、布尔型(bool)四种基础数据类型,后续章节将讨论其他标准数据类型。

数字类型3.1Python中有六个标准的数据类型,分别是数字、字符串、列表、元组、字典和集合。其中数字和字符串是基本数据类型,列表、元组、字典和元组这四种是组合数据类型,也称为序列数据类型。在后续的章节中会分别依次介绍每一种数据类型,这里我们主要讨论数字类型。数字是自然界计数活动的抽象,更是数学运算和推理表示的基础。计算机对数字的识别和处理有两个基本要求:确定性和高效性。确定性指程序能够正确、无歧义地解读数据所代表的类型含义。高效性指程序能够为数字提供较高的计算速度,同时具备较少的存储空间代价。表示数字或数值的数据类型称为数字类型。Python语言提供了四种数字类型:整型(int)、浮点型(float)、复数类型(complex)、布尔型(bool)。

数字类型3.13.1.1整型(int)整型(int)是表示整数的数据类型,整型对象是不可变对象。整型与数学中整数的概念一致,以下几个数值都表示整型数据:78,-95,1785,-13875

数字类型3.13.1.1整型(int)例3-1,初始化一个整型数据对象,判断该数是奇数还是偶数,并输出判断结果。a=35ifa%2==0:print("%d是偶数"%a)else:print("%d是奇数"%a)执行结果为:35是奇数与其他计算机语言有精度限制不同,Python中的整数位数可以为任意长度,但在实际使用过程中受限于Python程序的计算机内存大小。整型共有四种进制表示:十进制、二进制、八进制、十六进制。默认情况下,整数采用十进制,其他进制需要增加引导符号,如二进制数以0b引导,八进制数以0o引导,十六进制数以0x引导,大小写字母均可使用无论以哪一种进制定义的数据,在输出时都是用十进制输出的,如果需要用其他进制输出,则需要用到转换函数,表3-1列出了Python中内置的四种进制之间的转换函数。表3-1四种进制之间的转换函数

数字类型3.1例3-2定义四个整型数据对象,分别用二进制、十进制、八进制和十六进制表示,输出他们之间的转换结果,代码如下:a=0b110110b=0o765c=0x27AFd=1578print("变量a=0b110110,正常输出的结果是一个十进制:",a)print("变量b=0o765,正常输出的结果是一个十进制:",b)print("变量c=0x27AF,正常输出的结果是一个十进制:",c)print("变量d=1578,正常输出的结果是一个十进制:",d)print("变量a=0b110110转换为八进制后为:",oct(a))print("变量b=0o765转换为二进制后为:",bin(b))print("变量c=0x27AF转换为十进制后为:",int(c))print("变量d=1578转换为十六进制后为:",hex(d))

数字类型3.1

数字类型3.13.1.2浮点型(float)浮点数也称为小数,由整数和小数部分构成,如:3.14、-1.687等,在表示只有整数部分或者只有小数部分的浮点数如1.、.2时可以省略0。浮点型(float)是表示实数的数据类型,与其他计算机语言的双精度和单精度对应。Python浮点类型的精度与系统相关。浮点型用来处理实数,即带有小数的数字,浮点数的数值范围和小数精度受不同计算机系统的限制。sys.float_info详细列出了python解释器所运行系统的浮点数各项参数。例3-3

通过sys标准库查看系统支持的浮点数各项参数。importsysprint(sys.float_info)print(_info)

数字类型3.1分析:sys库是Python自带的一个系统标准库,他提供与程序运行相关的变量和方法,该库里的float_info列出本机支持的浮点型数据信息,int_info列出本机支持的整型数据信息。执行结果为:=========RESTART:J:/3-3.py========sys.float_info(max=1.7976931348623157e+308,max_exp=1024,max_10_exp=308,min=2.2250738585072014e-308,min_exp=-1021,min_10_exp=-307,dig=15,mant_dig=53,epsilon=2.220446049250313e-16,radix=2,rounds=1)_info(bits_per_digit=30,sizeof_digit=4)

数字类型3.1浮点型有两种表示形式,一种是十进制数形式,它由数字和小数点组成,并且这里的小数点是不可或缺的,如2.85、228.0、0.0等;另一种是指数形式,比如5.8e4或-2.8E-4分别表示5.8×104和-2.8×10-4,字母e(或E)之前必须有数字,字母e(或E)之后可以有正负号,表示指数的符号,如果没有则表示正号。此外,指数必须为整数。浮点型表示的浮点数代表实数,但只是近似值。例如2.0/3.0的运算结果是一个无限值,因为计算机的内存量有限,所以实数只能表示真实值的近似值。>>>2.0/3.00.6666666666666666浮点型同样可以表示正实数和负实数,当表示正实数时前面的“+”可以省略,当表示负实数时,必须在前面加上“-”。例3-4

BMI指数(即身体质量指数,简称体质指数又称体重,英文为BodyMassIndex,简称BMI),是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准,BMI=体重/身高2,(体重的单位为KG,身高的单位为M),编写程序让用户输入身高和体重,计算出BMI并给出用户反馈体重状态是否正常。

数字类型3.1分析:定义一个变量height用来表示身高,定义一个变量weight用来表示体重,定义一个变量bmi用来表示BMI指数,当BMI指数小于18.5为消瘦,18.5-24为正常,24-28为超重,大于28为肥胖。weight=input("你的体重是多少公斤(kg):")weight=float(weight)height=input("你的身高是多少米(m):")height=float(height)bmi=weight/pow(height,2)print("你的BMI为:",bmi)ifbmi<18.5:print("你为“消瘦”,请适当增加营养")elif18.5<=bmi<24:print("你为“正常”,请继续保持哦")elif24<=bmi<28:print("你为“超重”,请控制饮食")elifbmi>=28:print("你为“肥胖”,控制饮食增加运动,少吃多动")

数字类型3.1

数字类型3.13.1.3布尔型(bool)Python中的布尔类型(bool)简称布尔,主要用来表示“真”或“假”的值,每个对象天生具有布尔类型的True或False值。空对象、值为零的任何数字或者对象None的布尔值都是False,其他值则都是True。布尔值可以转换为数值,True的值为1,False的值为0,可以进行数值运算。Python的布尔型(bool)用于逻辑运算,参看表2-6,用于检测两个以上条件的情况,即多个bool值的逻辑运算,其结果为bool类型值。

数字类型3.13.1.4复数型(complex)复数型数据由实数部分和虚数部分组成,一般形式为x+yj或者complex(x,y),其中的x是复数的实部部分,y是复数的虚数部分,这里的x和y都是实数即浮点数。例如2+3j、0.1j、2.3+0j等。如果实数部分为0,就可以忽略。复数类型在科学计算中十分常见,基于复数的运算属于数学的复变函数分支,该分支有效支撑了众多科学和工程问题的数学表示和求解。对于复数z,可以用z.real和z.imag分别获得他的实数部分和虚数部分,例如:>>>a=3.5+6.5j>>>a.real3.5>>>a.imag6.5>>>a.real,a.imag(3.5,6.5)

数字类型之间的转换3.23.2.1隐式转换整型、浮点型、复数类型以及布尔型数据之间可以进行混合运算。不同数据类型在一起进行算术运算时,按照下面的原则进行隐式类型转换:(1)如果表达式中包含复数类型数据对象,则其他对象自动转换(隐式转换)为复数对象,结果为复数类型对象;(2)如果表达式中包含浮点型数据对象,则其他数据对象自动转换为浮点型数据对象,结果为浮点型数据对象;(3)布尔值参与运算时,True自动转换为1,False自动转换为0;(4)不支持数字和字符之间的隐式转换。

数字类型之间的转换3.2例3-5

整型、浮点型、复数类型之间的隐式转换案例。>>>a=3>>>type(a)#查看a的数据类型,输出结果为整型数据类型<class‘int'>>>>a=a+2.4>>>type(a)#查看a的数据类型,输出结果为浮点数据类型<class'float'>>>>a=a+(10+2J)>>>type(a)#查看a的数据类型,输出结果为复数数据类型<classcomplex>>>>b=True>>>type(b)<class'bool'>>>>c=b+5>>>c6>>>type(c)<class'int'>>>>d=c+"a"

#不支持数字和字符之间的隐式转换,所有下面报错Traceback(mostrecentcalllast):File"<pyshell#5>",line1,in<module>d=c+"a"TypeError:unsupportedoperandtype(s)for+:'int'and'str'>>>

数字类型之间的转换3.23.2.2显示转换显示转换又称为强制转换,使用目标类型将表达式强制转换为所需的数据类型。Python提供了一些常用的数据类型转换函数,表3-2列出了常用的数据类型的转换函数:3-2Python常用数据类型转换函数课后习题3.31.Python语言提供了四种数字类型:

、浮点型(float)、复数类型(complex)、布尔型(bool)。2.整型(int)是表示整数的数据类型,整型对象是

。(可变对象/不可变对象)3.整型共有四种进制表示:十进制、二进制、八进制、

。4.默认情况下,整数采用十进制,其他进制需要增加引导符号,如二进制数以

引导,八进制数以0o引导,十六进制数以

引导。5.函数bin(i) 返回对象i的

表示。6.函数int(i) 返回对象i的

表示。7.函数oct(i) 返回对象i的

表示。8.函数hex(i)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论