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:自定义的包名                图2:引用自定义包中的方法

 

 

 

 

 

 

 

 

四:内置模块

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 @   little小小  阅读(482)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示