书签 分享 收藏 举报 版权申诉 / 67
上传文档赚钱

类型Python程序设计教程第5章课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:2921347
  • 上传时间:2022-06-11
  • 格式:PPT
  • 页数:67
  • 大小:534.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《Python程序设计教程第5章课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Python 程序设计 教程 课件
    资源描述:

    1、第第5章章 Python模块模块模块是模块是PythonPython语言的一个语言的一个重要概念,它可以将函数重要概念,它可以将函数按功能划分到一起,以便按功能划分到一起,以便日后使用或共享给他人。日后使用或共享给他人。可以使用可以使用PythonPython标准库中标准库中的模块,也可以下载和使的模块,也可以下载和使用第三方模块。用第三方模块。本章知识点本章知识点p模块的基本概念模块的基本概念psyssys模块模块pmathmath模块模块pdecimaldecimal模块模块p自定义模块自定义模块prandomrandom模块模块pfractionsfractions模块模块ptimeti

    2、me模块模块pplatformplatform模块模块p5.1 模块的基本概念模块的基本概念p5.1.1 5.1.1 什么是模块什么是模块p5.1.2 5.1.2 如何导入模块如何导入模块5.1.1 什么是模块什么是模块p第第4 4章介绍了函数,函数是可以实现一项或多章介绍了函数,函数是可以实现一项或多项功能的一段程序。模块是好多功能的扩展,项功能的一段程序。模块是好多功能的扩展,是可以实现一项或多项功能的程序块。从定义是可以实现一项或多项功能的程序块。从定义可以看到,函数是一段程序,模块是一项程序可以看到,函数是一段程序,模块是一项程序块。也就是说函数和模块都是用来实现功能的块。也就是说函数

    3、和模块都是用来实现功能的,但是模块的范围比函数要广。在模块里可以,但是模块的范围比函数要广。在模块里可以重用多个函数。下面通过实例来看一下什么是重用多个函数。下面通过实例来看一下什么是模块。模块。pPythonPython的模块以的模块以.py.py文件的形式存储,保存在文件的形式存储,保存在PythonPython主目录下的主目录下的LibLib目录下,例如,目录下,例如,C:Python27LibC:Python27Lib。如图。如图5-15-1所示。所示。Python的模块文件的模块文件gzip.py的内容的内容5.1.2 如何导入模块如何导入模块p在在PythonPython中,如要在

    4、程序中,如要在程序 使用摸个模块,必使用摸个模块,必须先导入模块。使用须先导入模块。使用importimport语句可以导入模块语句可以导入模块,语句如下:,语句如下:import import 模块名模块名p可以使用下面的方式访问模块中的函数:可以使用下面的方式访问模块中的函数:p模块名模块名. .函数名函数名( (参数列表参数列表) )p可以使用下面的方式访问模块中的变量:可以使用下面的方式访问模块中的变量:模块名模块名. .变量变量例如例如p 使用使用MathMath模块中的模块中的pipi常量可以返回数学中的常数常量可以返回数学中的常数。下面做一个下面做一个实验,打开实验,打开IDLE

    5、IDLE,在,在ShellShell窗口中直接输入窗口中直接输入pipi,然后回车,结果如,然后回车,结果如下:下:TracebackTraceback (most recent call last): (most recent call last): File , line 1, in File , line 1, in pi piNameErrorNameError: name pi is not defined: name pi is not definedp 可以看到,可以看到,PythonPython没有找到没有找到pipi的定义。的定义。p 输入输入math.pimath.pi,然

    6、后回车,结果如下:,然后回车,结果如下:TracebackTraceback (most recent call last): (most recent call last): File , line 1, in File , line 1, in math.pimath.piNameErrorNameError: name math is not defined: name math is not defined输入输入import mathimport math,回车后再执行,回车后再执行math.pimath.pi,会输出,会输出3.1415926535897933.1415926535

    7、897935.2 Python标准库中常用模块标准库中常用模块5.1.1 sys5.1.1 sys模块模块5.1.2 platform5.1.2 platform模块模块5.1.3 5.1.3 与数学有关的模块与数学有关的模块5.1.4 time5.1.4 time模块模块5.2.1 sys模块模块psyssys模块是模块是PythonPython标准库中最常用的模块标准库中最常用的模块之一。通过它可以获取命令行参数,从之一。通过它可以获取命令行参数,从而实现从程序外部向程序传递参数的功而实现从程序外部向程序传递参数的功能;也可以获取程序路径和当前系统平能;也可以获取程序路径和当前系统平台等信

    8、息。台等信息。1获取当前的操作系统平台获取当前的操作系统平台pPythonPython是支持跨平台的语言。因此,在是支持跨平台的语言。因此,在程序中经常需要获取当前的操作系统平程序中经常需要获取当前的操作系统平台。以便针对不同的操作系统编写对应台。以便针对不同的操作系统编写对应的程序。的程序。p使用变量使用变量sys.platformsys.platform可以获取当前的可以获取当前的操作系统平台。操作系统平台。p【例【例5-15-1】 使用变量使用变量sys.platformsys.platform打印打印当前的操作系统平台。当前的操作系统平台。import sysimport syspri

    9、nt(print(sys.platformsys.platform) )2使用命令行参数使用命令行参数所谓命令行参数是指在运行程序时命令行中给定所谓命令行参数是指在运行程序时命令行中给定的参数。例如,以下面的命令运行的参数。例如,以下面的命令运行command.pycommand.py:python command.py a b cpython command.py a b ca a、b b、c c连同脚本文件连同脚本文件command.pycommand.py本身都是命令本身都是命令行参数。通过命令行参数可以向程序中传递数据行参数。通过命令行参数可以向程序中传递数据。【例例5-2】 打印命令

    10、行参数。打印命令行参数。import sysimport sysprint(Argument print(Argument count:+count:+strstr( (lenlen( (sys.argvsys.argv););for for i i in range(0, in range(0, lenlen( (sys.argvsys.argv):):print(+ print(+ strstr(i+1)+: + (i+1)+: + sys.argvsys.argv i i)打开命令行窗口,切换到例打开命令行窗口,切换到例5-2.py所在所在的目录,执行下面的命令的目录,执行下面的命令Ar

    11、gument count:4Argument count:41: 1: 例例5-2.py5-2.py2: a2: a3: b3: b4: c4: c3退出应用程序退出应用程序p 使用使用sys.exitsys.exit()()函数可以退出应用程序。语法如下函数可以退出应用程序。语法如下:sys.exitsys.exit(n);(n);p n=0n=0时,程序无错误退出;时,程序无错误退出;n=1n=1时,程序有错误退出时,程序有错误退出。【例例5-3】 使用使用sys.exit()函数的例子。函数的例子。#coding=utf-8#coding=utf-8import sysimport sy

    12、sif if lenlen( (sys.argvsys.argv)2:)2:print(print(请使用命令行参数请使用命令行参数););sys.exitsys.exit(1)(1)for for i i in range(0, in range(0, lenlen( (sys.argvsys.argv):):print(+ print(+ strstr(i+1)+: + (i+1)+: + sys.argvsys.argv i i)4字符编码字符编码p 常用的处理中文的字符编码包括常用的处理中文的字符编码包括GB2312GB2312、GBKGBK和和BIG5BIG5等。等。p GB2312

    13、GB2312编码:中华人民共和国国家汉字信息交换用编码,全称编码:中华人民共和国国家汉字信息交换用编码,全称信信息交换用汉字编码字符集息交换用汉字编码字符集基本集基本集,19801980年由国家标准总局发布。年由国家标准总局发布。GB2312GB2312编码使用编码使用2 2个字节表示一个汉字,所以理论上最多可以表示个字节表示一个汉字,所以理论上最多可以表示256256256=65536256=65536个汉字。但实际上个汉字。但实际上GB2312GB2312编码基本集共收入汉字编码基本集共收入汉字67636763个个和非汉字图形字符和非汉字图形字符682682个。个。GB2312GB2312

    14、编码通行于中国大陆。新加坡等地也使编码通行于中国大陆。新加坡等地也使用此编码。用此编码。p GBKGBK编码:汉字内码扩展规范,编码:汉字内码扩展规范,K K为扩展的汉语拼音中为扩展的汉语拼音中“扩扩”字的声字的声母。英文全称母。英文全称Chinese Internal Code SpecificationChinese Internal Code Specification。GBKGBK编码标准兼编码标准兼容容GB2312GB2312,共收录,共收录2100321003个汉字、个汉字、883883个符号,并提供个符号,并提供18941894个造字码位,个造字码位,简、繁体字融于一库。简、繁体

    15、字融于一库。p BIG5BIG5编码:一种繁体中文汉字字符集,其中繁体汉字编码:一种繁体中文汉字字符集,其中繁体汉字1305313053个,个,808808个标点符号、希腊字母及特殊符号。因为个标点符号、希腊字母及特殊符号。因为Big5Big5的字符编码范围同的字符编码范围同GB2312GB2312字符的存储码范围存在冲突,所以在同一正文不能对两种字符集的字符字符的存储码范围存在冲突,所以在同一正文不能对两种字符集的字符同时支持。同时支持。p 还有一种通用的字符编码还有一种通用的字符编码UTF-8UTF-8。UTF-8UTF-8是是8-bit Unicode 8-bit Unicode Tra

    16、nsformation FormatTransformation Format的缩写,它是一种针对的缩写,它是一种针对UnicodeUnicode的可变长度字符的可变长度字符编码,又称万国码。编码,又称万国码。Unicode Unicode 是为了解决传统的字符编码方案的局限而是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。,以满足跨语言、跨平台进行文本转换、处理的要求。【例例5-4】import sysimport sysprint(

    17、print(sys.getdefaultencodingsys.getdefaultencoding();();p在中文在中文Windows 10Windows 10下运行结果为:下运行结果为:asciiascii5搜索模块的路径搜索模块的路径p当使用当使用importimport语句导入模块时,语句导入模块时,PythonPython会自动搜索模块文件。那么,会自动搜索模块文件。那么,PythonPython会会到哪些路径去搜索模块文件呢到哪些路径去搜索模块文件呢? ?可以通过可以通过sys.pathsys.path获取搜索模块的路径。获取搜索模块的路径。【例【例5-5】 import sy

    18、simport sysprint(sys.path);print(sys.path);笔者的环境是笔者的环境是Windows 8.1+ Python 3.4.2Windows 8.1+ Python 3.4.2,运,运行结果为:行结果为:, , C:Python34Libidlelib, C:Python34Libidlelib, C:WindowsSYSTEM32python34.zip, C:WindowsSYSTEM32python34.zip, C:Python34DLLs, C:Python34lib, C:Python34DLLs, C:Python34lib, C:Python3

    19、4, C:Python34libsite-C:Python34, C:Python34libsite-packagespackages5.2.2 platform模块模块p1 1获取操作系统名称及版本号获取操作系统名称及版本号p使用使用platform.platformplatform.platform()()函数可以获取函数可以获取操作系统名称及版本号信息。操作系统名称及版本号信息。p【例例5-65-6】 打印当前操作系统名称及版打印当前操作系统名称及版本号。本号。import platformimport platformprint(print(platform.platformplatf

    20、orm.platform();();2获取操作系统类型获取操作系统类型使用使用platform.systemplatform.system()()函数可以获取函数可以获取操作系统类型。操作系统类型。【例例5-75-7】 打印当前操作系统类型。打印当前操作系统类型。import platformimport platformprint(print(platform.systemplatform.system();();3获取操作系统版本信息获取操作系统版本信息p使用使用platform.versionplatform.version()()函数可以获取函数可以获取操作系统的版本信息。操作系统的版

    21、本信息。p【例【例5-85-8】 打印当前操作系统的版本信打印当前操作系统的版本信息。息。import platformimport platformprint(print(platform.versionplatform.version();();4获取计算机类型信息获取计算机类型信息p使用使用platform.architectureplatform.architecture()()函数可以函数可以获取计算机类型信息。获取计算机类型信息。p【例【例5-95-9】 打印当前计算机类型信息。打印当前计算机类型信息。import platformimport platformprint(plat

    22、form. machine();print(platform. machine();5获取计算机的网络名称获取计算机的网络名称p使用使用platform.nodeplatform.node()()函数可以获取计算机的函数可以获取计算机的网络名称。网络名称。p【例【例5-105-10】 打印当前计算机的网络名称。打印当前计算机的网络名称。import platformimport platformprint(print(platform.nodeplatform.node();();6获取计算机的处理器信息获取计算机的处理器信息p使用使用platform.processorplatform.pr

    23、ocessor()()函数可以函数可以获取计算机的处理器信息。获取计算机的处理器信息。p【例【例5-115-11】 打印当前计算机的处理打印当前计算机的处理器信息。器信息。import platformimport platformprint(print(platform.processorplatform.processor();();7获取计算机的综合信息获取计算机的综合信息p使用使用platform.unameplatform.uname()()函数可以获函数可以获取计算机的以上所有综合信息。取计算机的以上所有综合信息。p【例【例5-125-12】 打印当前计算机的综打印当前计算机的综合

    24、信息。合信息。import platformimport platformprint(print(platform.unameplatform.uname();();8获取获取Python版本信息版本信息p使用使用platform.python_buildplatform.python_build()()函数可以函数可以获取获取PythonPython完整版本信息,包括完整版本信息,包括PythonPython的主版本、编译版本号和编译时间等信的主版本、编译版本号和编译时间等信息。息。p【例【例5-135-13】 打印打印PythonPython版本信息。版本信息。import platfor

    25、mimport platformprint(print(platform.python_buildplatform.python_build();();【例例5-14】p打印打印PythonPython主版本信息。主版本信息。import platformimport platformprint(print(platform.python_versionplatform.python_version()(); ;print(print(platform.python_version_tuplatform.python_version_tupleple();();【例例5-15】 打印打印Pyt

    26、hon修订版本信修订版本信息息import platformimport platformprint(platform.python_revision();print(platform.python_revision();9获取获取Python编译器信息编译器信息使用使用platform. platform. python_compilerpython_compiler () ()函函数可以获取数可以获取PythonPython的编译器信息。的编译器信息。【例例5-165-16】 打印打印PythonPython的编译器信息的编译器信息。import platformimport platfo

    27、rmprint(print(platform.python_compilerplatform.python_compiler();();10获取获取Python分支信息分支信息【例【例5-17】 打印打印Python的分支信息的分支信息import platformimport platformprint(platform.python_branch();print(platform.python_branch();11获取获取Python解释器的实现版本信解释器的实现版本信息息p CPythonCPython:默认的:默认的PythonPython实现。脚本大多数情况实现。脚本大多数情况下都

    28、运行在这个解释器中。下都运行在这个解释器中。 CPythonCPython是官方的是官方的pythonpython解释器,完全按照解释器,完全按照PythonPython的规格和语言定义的规格和语言定义来实现,所以被当作其他版本实现的参考版本。来实现,所以被当作其他版本实现的参考版本。CPythonCPython是用是用C C语言写的,当执行代码的时候语言写的,当执行代码的时候PythonPython代码会被转化成字节码。因此代码会被转化成字节码。因此CPythonCPython是个字节码解是个字节码解释器。释器。p PyPyPyPy:由:由PythonPython写成的解释器。很多地方都和写

    29、成的解释器。很多地方都和CPythonCPython很像的实现。这个解释器的代码先转化成很像的实现。这个解释器的代码先转化成C C,然后再编译。,然后再编译。PyPyPyPy比比CPythonCPython性能更好。因为性能更好。因为CPythonCPython会把代码转化成字节码,会把代码转化成字节码,PyPyPyPy会把代码转化会把代码转化成机器码。成机器码。 p Psyco Psyco:类似:类似PyPyPyPy的解释器。现在已经被的解释器。现在已经被PyPyPyPy取代了。取代了。 pJythonJython:使用:使用javajava实现的一个解释器,可以实现的一个解释器,可以把把j

    30、avajava的模块加载在的模块加载在pythonpython的模块中使用。的模块中使用。pIronPythonIronPython:使用:使用C#C#语言实现,可以使用在语言实现,可以使用在.NET .NET 和和 Mono Mono 平台的解释器。平台的解释器。pCLPythonCLPython:使用:使用 Common LispCommon Lisp实现的解释器实现的解释器,它允许,它允许 Python Python 和和 Common Lisp Common Lisp 的代码混的代码混合使用。合使用。pPyS60PyS60:诺基亚:诺基亚 S60 S60 平台的实现版本。平台的实现版本

    31、。pActivePythonActivePython:基于基于CPythonCPython然后添加一系然后添加一系列拓展的一个实现。是由列拓展的一个实现。是由ActiveStateActiveState发布的发布的。pCythonCython:一个允许把一个允许把PythonPython代码转化成代码转化成 C/C+C/C+代码或者使用各种各样的代码或者使用各种各样的C/C+C/C+模块或文模块或文件的实现。件的实现。pQPythonQPython:CPythonCPython解释器的一个安卓接口。解释器的一个安卓接口。pKivyKivy:一个开源的框架。可以运行在一个开源的框架。可以运行在

    32、Android, iOS, Windows, Linux, MeeGo, Android, iOS, Windows, Linux, MeeGo, Android SDK, Android SDK, 和和 OS XOS X平台上。支持平台上。支持Python3Python3。pSL4A (Scripting Layer for Android)SL4A (Scripting Layer for Android):是一个允许安卓上执行各种脚本语言的兼容层是一个允许安卓上执行各种脚本语言的兼容层。SL4A SL4A 有很多的模块,与有很多的模块,与PythonPython有关的是有关的是“Py4A

    33、” (Python for Android)Py4A” (Python for Android)。 Py4A Py4A 是是安卓平台上的一种安卓平台上的一种CPythonCPython。【例例5-18】import platformimport platformprint(platform. print(platform. python_implementationpython_implementation();();5.2.3 与数学有关的模块与数学有关的模块p1 1mathmath模块模块pmathmath模块基础数学处理,可以实现基本模块基础数学处理,可以实现基本道德数学运算。首先需要使

    34、用道德数学运算。首先需要使用importimport语语句导入模块,语句如下:句导入模块,语句如下:import mathimport mathpmathmath模块定义了模块定义了e e(自然对数)和(自然对数)和pipi()两个常量。)两个常量。【例例5-19】 打印打印e(自然对数)和(自然对数)和pi()的值)的值import mathimport mathprint(print(math.emath.e););print(print(math.pimath.pi););p运行结果如下:运行结果如下:2.7182818284590452.7182818284590453.1415926

    35、535897933.141592653589793math模块的常用方法模块的常用方法方法原型具体说明asinmath.asin (x)返回 x 的反正弦asinhmath.asinh(x)返回 x 的反双曲正弦atanmath.atan(x)返回 x 的反正切atan2math.atan2(y,x)返回 y/x 的反正切atanhmath.atanh(x)返回 x 的反双曲正切ceilmath.ceil(x)返回大于等于x的最小整数copysignmath.copysign(x,y)返回与 y 同号的 x 值cosmath.cos(x)返回 x 的余弦coshmath.cosh(x)返回 x

    36、 的双曲余弦degreesmath.degrees(x)將x(弧长)转成角度,与radians为反函数expmath.exp(x)返回 exfabsmath.fabs(x)返回x的绝对值factorialmath.factorial(x)返回 x!【例例5-20】import mathimport mathprint(math.ceil(3.4)=)print(math.ceil(3.4)=)print(math.ceil(3.4)print(math.ceil(3.4)print(math.fabs(-3)=)print(math.fabs(-3)=)print(math.fabs(-3)p

    37、rint(math.fabs(-3)print(math.floor(3.4)=)print(math.floor(3.4)=)print(math.floor(3.4)print(math.floor(3.4)print(math.sqrt(4)=)print(math.sqrt(4)=)print(math.sqrt(4)print(math.sqrt(4)print(math.trunc(3.4)=)print(math.trunc(3.4)=)print(math.trunc(3.4)print(math.trunc(3.4)运行结果如下:运行结果如下:math.ceil(3.4)=m

    38、ath.ceil(3.4)=4 4math.fabs(-3)=math.fabs(-3)=3.03.0math.floor(3.4)=math.floor(3.4)=3 3math.sqrt(4)=math.sqrt(4)=2.02.0math.trunc(3.4)=math.trunc(3.4)=3 32random模块模块方法原型具体说明random()random.random()生成一个0到1的随机浮点数: 0 = n b,则生成的随机数n满足a = n = b。如果 a b, 则b = n = arandintrandom.randint(a, b)用于生成一个指定范围内的整数。其中

    39、参数a是下限,参数b是上限,生成的随机数n: a = n = brandrangerandom.randrange (start, stop, step) (y,x)从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(1, 10, 2),结果相当于从2, 4, 6, 8序列中获取一个随机数choicerandom.choice (sequence)从序列中获取一个随机元素。参数sequence表示一个有序类型,可以是列表、元祖或字符串shufflerandom.shuffle (x, random)用于将一个列表中的元素打乱。x是一个列表samplera

    40、ndom.sample(sequence, k)从指定序列中随机获取指定长度(k)的片断。原有序列不会被修改【例例5-21】 随机生成一个随机生成一个0100的的整数整数import randomimport randomprint(random.randint(0,99)print(random.randint(0,99)【例例5-22】import randomimport randomprint(random.randrange(0, 101, 2)print(random.randrange(0, 101, 2)【例例5-23】import randomimport randompri

    41、nt(random.random()print(random.random()【例例5-25】import randomimport randomlist = 1, 2, 3, 4, 5, 6list = 1, 2, 3, 4, 5, 6random.shuffle(list)random.shuffle(list)print(list)print(list)3decimal模块模块浮点数缺乏精确性,浮点数缺乏精确性,decimal decimal 模块提供了一个模块提供了一个 Decimal Decimal 数据类型用于浮点数计算。与内置的二数据类型用于浮点数计算。与内置的二进制浮点数实现进

    42、制浮点数实现floatfloat相比,相比,Decimal Decimal 数据类型数据类型更适用于金融应用和其他需要精确十进制表达的更适用于金融应用和其他需要精确十进制表达的情况。情况。首先需要使用首先需要使用importimport语句导入模块语句导入模块decimaldecimal,语语句如下:句如下:from decimal import Decimalfrom decimal import Decimal使用下面的方法可以定义使用下面的方法可以定义DecimalDecimal类型的数据:类型的数据:Decimal(Decimal(数字字符串数字字符串) )【例【例5-27】from

    43、decimal import Decimalfrom decimal import Decimalprint(Decimal(1.0) / Decimal(3.0)print(Decimal(1.0) / Decimal(3.0)p运行结果如下:运行结果如下:0.33333333333333333333333333330.3333333333333333333333333333【例例5-28】from decimal import Decimalfrom decimal import Decimalfrom decimal import getcontextfrom decimal impor

    44、t getcontextgetcontext().prec = 6getcontext().prec = 6print(Decimal(1.0) / Decimal(3.0)print(Decimal(1.0) / Decimal(3.0)运行结果如下:运行结果如下:0.3333330.3333334fractions模块模块fractionsfractions模块用于表现和处理分数。首先需要使用模块用于表现和处理分数。首先需要使用importimport语句导入模块语句导入模块fractionsfractions,语句如下:,语句如下:import fractionsimport fract

    45、ions使用下面的方法可以定义分数数据:使用下面的方法可以定义分数数据:x = x = fractions.Fractionfractions.Fraction( (分子分子, , 分母分母) )【例例5-29】import fractionsimport fractionsx = x = fractions.Fractionfractions.Fraction(1, 3)(1, 3)print(x)print(x)p 运行结果如下:运行结果如下:1/31/3Fraction对象将会自动进行约分。对象将会自动进行约分。from decimal import getcontextfrom dec

    46、imal import getcontext【例【例5-30】import fractionsimport fractionsx = x = fractions.Fractionfractions.Fraction(1, 6)(1, 6)print(xprint(x* *4)4)p运行结果如下:运行结果如下:2/32/35.2.4 time模块模块p1 1时间的表示方式时间的表示方式p计算机可以使用时间戳和计算机可以使用时间戳和struct_timestruct_time数组两数组两种方式表示时间。种方式表示时间。pUnixUnix时间戳时间戳(Unix timestamp)(Unix tim

    47、estamp),或称,或称UnixUnix时间时间(Unix time)(Unix time)、POSIXPOSIX时间时间(POSIX time)(POSIX time),是一,是一种时间表示方式,定义为从格林威治时间种时间表示方式,定义为从格林威治时间19701970年年0101月月0101日日0000时时0000分分0000秒秒( (北京时间北京时间19701970年年0101月月0101日日0808时时0000分分0000秒秒) )起至现在的总秒数。起至现在的总秒数。UnixUnix时间戳不仅被使用在时间戳不仅被使用在UnixUnix系统、类系统、类UnixUnix系系统中统中( (比

    48、如比如LinuxLinux系统系统) ),也在许多其他操作系,也在许多其他操作系统中被广泛采用。统中被广泛采用。struct_time数组包含数组包含9个元素个元素p yearyear,4 4位的年份,例如位的年份,例如20152015;p monthmonth,月份,月份,112112的整数;的整数;p dayday,日期,日期,131131的整数;的整数;p hourshours,小时,小时,023023的整数;的整数;p minutesminutes,分钟,分钟,059059的整数;的整数;p secondsseconds,秒钟,秒钟,059059的整数;的整数;p weekdaywee

    49、kday,星期,星期,0606的整数,星期一位的整数,星期一位0 0;p Julian dayJulian day,一年有几天,一年有几天,13661366的整数;的整数;p DSTDST,表示是否为夏令时。如果,表示是否为夏令时。如果DSTDST等于等于0 0,则给定,则给定的时间属于标准时区;如果的时间属于标准时区;如果DSTDST等于等于1 1,则给定的时间,则给定的时间属于夏令时时区。属于夏令时时区。2获取当前时间获取当前时间调用调用time.time()time.time()函数可以获取当前时间的时间戳。函数可以获取当前时间的时间戳。【例例5-315-31】 使用使用time.tim

    50、e()time.time()函数的例子。函数的例子。import timeimport timeprint(time.time()print(time.time()运行结果如下:运行结果如下:1419225087.6732771419225087.6732773将一个时间戳转换成一个当前时区的将一个时间戳转换成一个当前时区的struct_timep调用调用time.localtimetime.localtime()()函数可以函数可以 将一个时间将一个时间戳转换成一个当前时区的戳转换成一个当前时区的struct_timestruct_timep【例【例5-325-32】 使用使用time.lo

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:Python程序设计教程第5章课件.ppt
    链接地址:https://www.163wenku.com/p-2921347.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库