PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

Python模块化整理和第三方模块的安装(总结分享)

WBOY
WBOY 转载
2022-05-16 17:54:10 2567浏览

本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于模块化编程和第三方模块安装的相关问题,还包括了python中的包等内容,下面一起来看一下,希望对大家有帮助。

推荐学习:python视频教程

模块化编程

1.什么叫模块(Modules)?

模块与函数的关系一个模块中可以包含N多个函数;
在Python中一个扩展名为.py的文件就是一个模块;
模块中含有类、函数和语句
一个程序项目由N个模块组成;

使用模块的好处:
方便其他程序和脚本的导入并使用
避免函数名和变量名冲突(两个模块有相同的变量名不冲突)
提高代码的可维护性
提高代码的可重用性

2.自定义模块

创建模块:
新建一个.py文件,名称不要与Python自带的标准模块名称相同

导入模块:
第一种:import 模块名称 [as 别名]
第二种:from 模块名称 import 函数/变量/类

第一种

#第一种导入方式
import math
print(id(math))
print(type(math))
print(math)
print(dir(math)) #查看math中的属性方法
print('--------------------------------------')
print(math.pi)
print(math.pow(2,5))
print(math.ceil(9.01))
print(math.floor(9.999))

在这里插入图片描述
第二种

#第二种导入方式 只导入模块中指定的一部分
from math import pi
print(pi)
print(pow(2,3))
from math import pow
print(pow(2,3))

同样的,导入自己写的模块也是一样的方法。

3.以主程序的形式执行

有时候我们在调用其他模块的内容的时候,由于在其他模块的定义中会输出一些语句,导致在我们的当前模块输出内容时,也会输出调用模块的输出内容,这时候,我们可以在所调用的模块输出前加条件:

if __name__=='__main__':
    pass

只有这个模块为主程序运行时,才会执行pass

4.python中的包

:是一个分层次的目录结构,它将一组功能相近的模块组织在一起。
作用:代码规范、避免模块名称冲突(不同包中不同模块模块名可以相同)
包与目录的区别:
包含__init__.py文件的目录称为包
目录通常不包含__init__.py文件

包的导入:
import 包名.模块名

import pagekge.module_A
print(pagekge.moudle_A.a)#调用一个包里的一个模块的一个属性或函数
import pagekge.module_A as mm #取小名
print(mm.a)

总结注意:
使用import开头导入方式只能导入包名或模块名
使用from…import导入方式可以导入包、模块、函数、变量

5.Python中常用的内置模块

在这里插入图片描述

import sys
print(sys.getsizeof(24))
print(sys.getsizeof(99))
print(sys.getsizeof(True))
print(sys.getsizeof(False))
import time
print(time.time()) #输出秒
print(time.localtime(time.time())) #输出当前时间
import urllib.request  #与爬虫有关的
print(urllib.request.urlopen('http://www.baidu.com').read()) #读取百度网址

6.第三方模块的安装及使用

Python的强大离不开第三方模块。有很多人写了很多第三方模块实现了很多功能,而我们只需安装就可使用。

安装

pip install 模块名

在线安装方式

以安装schedule模块为例:
第一步:windows徽标键+R调出窗口,输入cmd,点击确定
在这里插入图片描述
第二步:输入pip install+要安装的模块名称,按回车键
在这里插入图片描述
第三步:输入python,回车进入python的交互式程序,输入 import +模块名,回车,如果没有报错则安装成功!
在这里插入图片描述

使用

import 模块名

import scheduleimport timedef job():
    print('666666')schedule.every(3).seconds.do(job)while True:
    schedule.run_pending()  #检测job的时间到了没有
    time.sleep(1)

推荐学习:python视频教程

声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除