【软件测试教程】Python模块化以及内置模块的使用

一:什么是模块

 

模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。

 

二:模块类型

1:自定义模块

 

由编程人员自己写的模块。自定义模块时要注意命名,不能和Python的内置模块名称冲突。

 

2:内置模块

 

Python定义好的,有特定的名称以及包装的函数。常见的内置模块如下:

  • time(用于处理日期和时间)        

  • sys(用于操控python运行时的环境)        

  • os(用于与操作系统交互,比如处理文件和目录)        

  • json(用于处理json数据)        

  • subprocess(用于执行外部命令的模块)        

  • 其他:datatime,random

 

三:模块的导入与引用

 

当跨模块调用时使用。要先导入模块,对于导入模板的语句一般放在程序前面,且按照Python标准库模块、Python第三方模块、自定义模块的顺序从上到下排开。

 

  导入模块的方式有两种:

 

方式一:使用import导入

 

导入语法:import 模块名  

调用语法:模块名.函数名()  或者模块名.类名

 

方式二:使用from…impor..导入

 

导入语法:from 模块名 import 函数名1,函数名2或者类名1,类名2

 

如果导入的是函数名,引用语法:函数名1()

如果导入的是类名,引用语法:对象名=类名   对象名.方法()

 

注意:对于以上两种方式,推荐使用方式一,对于方式二存在覆盖的情况。如果引入的两个模块中含有相同名称函数的时候,后面一次引入会覆盖前一次引入。

 

 

案例:

 

 

 

在cal.py文件中定义4个函数,分别实现求和、求差、求积、求商

 

在model_cal.py文件中引入calculate.py文件,再调用定义的函数

 

 

四:内置模块

 

1:time模块

 

Python编程中经常会用到time和datatime来处理日期和时间。在这主要给大家介绍time模块中有关时间处理的函数使用。

 

时间的表示常见的有三种形式:时间戳,时间元组以及英文时间字符串

 

  • 时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数

  • 时间元组:即用一个元组装起来的9组数字表示时间t = (2018,6,24,16,56,45,0,0,0)  #(年、月、日、时、分、秒、一周的第几日、一年的第几日、夏令时<1(夏令时)、0(不是夏令时)、-1(未知),默认 -1>)

  • 英文时间字符串:Thu Aug 13 13:35:12 2020

 

案例1:使用内置time模块,分别获取当前时间戳、时间元组以及英文时间字符串

 

 案例2:对获取的当前时间元组分别以年、月、日、时、分、秒的部分进行截取,分别获取各部分的值并进行输出

 

 

案例3:时间元组、时间戳、时间字符串之间的相互转换

 

  • 时间戳转为时间元组:time.localtime(时间戳)

  • 把时间元组转换成时间戳:time.mktime(t)

  • 时间元祖转换为字符串:time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())

  • 字符串转换为时间元祖:time.strptime("2019-09-01 22:29:35",'%Y-%m-%d %H:%M:%s')

    •  

       

       

       

      2:calendar模块

       

      Python编程中经常会用到calendar来处理日历。在这主要给大家介绍calendar模块中有关日历的使用。

       

      案例4:分别获取指定年份的年日历、指定某年某月的月日历、以及判断指定的年份是否是闰年?

  •  

     文章首发于公众号:程序员一凡,更多软件测试教程欢迎关注我!

posted @ 2020-11-24 22:07  测试人一凡  阅读(44)  评论(0编辑  收藏