首页 > 编程语言 >Python 中的模块

Python 中的模块

时间:2023-01-28 19:12:30浏览次数:44  
标签:函数 fabs Python 模块 import math

Python 模块是一个 Python 文件,定义了各种功能接口。把复杂的功能封装为模块(又称为库),将功能实现的细节隐藏起来,使用该模块(库)的程序员不需要了解实现的细节。通过调用模块封装好的功能,可以用仅仅几行 Python 代码实现某项复杂的功能,例如可以用一行代码就实现一个 Web 服务器。

在 Python 的应用领域中,如:web 开发、人工智能、网络爬虫、数据分析等领域,已经存在了大量的模块,使用这些模块就可以轻松开发出应用程序。

1. 内置模块
Python 中的模块分为两类:

内置模块,由 Python 官方提供,包含在 Python 的安装包中,安装完 Python 后即可使用
第三方模块,由 Python 爱好者提供,需要用户额外安装
Python 提供了多个内置模块,提供了日常编程中许多问题的标准解决方案,常见的内置模块如下:

模块名 功能描述
os 提供操作系统的 IO 访问等功能
sys 提供获取命令行参数等功能
math 提供各种常见的数学运算函数
random 提供产生随机数的功能
json 提供对 json 文件的解析功能
datetime 提供日期、时间的相关功能
2. 模块语法
2.1 math 模块简介
Python 的 math 模块提供了很多数学运算功能,例如:三角函数、求平方根、求对数等功能:

函数接口 功能描述
fabs 计算绝对值
sin 正弦函数
cos 余弦函数
sqrt 求平方根
在下面的小节,将使用 math 模块作为例子讲解 Python 中模块的语法。

2.2 import 语句
import 语句将指定模块名的模块导入到程序中,然后程序即可使用模块中定义的函数,语法如下:

import 模块名
使用 import 语句的示例如下:

>>> import math
>>> math.fabs(-123.0)
123.0
在第 1 行,引入 math 模块
在第 2 行,使用 math 模块中的 fabs 函数求绝对值
2.3 import … as 语句
import … as 语句为模块取一个别名,程序可以使用模块的别名访问模块中的接口函数,语法如下:

import 模块名 as 别名
使用 import … as 语句的示例如下:

>>> import math as m
>>> m.fabs(-123.0)
123.0
在第 1 行,引入 math 模块,设置模块的别名为 m
在第 2 行,通过模块的别名 m 访问模块
2.4 from … import 语句
from … import 语句从指定模块中导入指定函数,程序可以通过函数名直接访问模块中定义的函数,语法如下:

from 模块名 import 函数名
使用 from … import 语句的示例如下:

>>> from math import fabs
>>> fabs(-123.0)
123.0
在第 1 行,从 math 模块中引入函数 fabs
在第 2 行,通过函数名 fabs 访问模块中定义的函数
2.5 from … import … as 语句
from … import … as 语句从模块中导入函数,同时为导入的函数取一个别名,示例如下:

>>> from math import fabs as abs
>>> abs(-123.0)
123.0
在第 1 行,从 math 模块中引入函数 fabs,并为该函数设置别名 abs
在第 2 行,通过函数的别名 abs 访问模块中定义的函数
2.6 from … import * 语句
from … import * 语句导入模块中全部的功能函数,示例如下:

>>> from math import *
>>> fabs(-123.0)
123.0
>>> sqrt(9)
3.0
在第 1 行,从 math 模块中导入全部的功能函数
在第 2 行,使用 math 模块中定义的函数 fabs 求绝对值
在第 4 行,使用 math 模块中定义的函数 sqrt 求平方根
3. 用户自定义模块
3.1 概述
本节讲解了如何自定义模块和使用模块,例子程序包括两个文件:

模块 utils.py,定义了函数 max、函数 min 和变量 PI,它们是模块提供的接口
主程序 main.py,使用模块的接口函数和导出变量
3.2 定义模块
编写程序 utils.py:

PI = 3.14

def max(a, b):
if a > b:
return a
else:
return b

def min(a, b):
if a < b:
return a
else:
return b
在第 1 行,定义了模块的导出变量 PI
在第 3 行,定义了模块的导出函数 max
在第 9 行,定义了模块的导出函数 min
3.3 使用模块
编写主程序 main.py,注意:将 main.py 和 utils.py 放置在相同目录下:

import utils
print(utils.PI)
print(utils.max(11, 22))

from utils import min
print(min(11, 22))
在第 1 行,引入模块 utils
在第 2 行,访问模块的导出变量 PI
在第 3 行,访问模块的导出函数 max
在第 5 行,引入模块 utils 中的导出函数 min
在第 6 行,访问模块的导出函数 min
运行程序 main.py,输出结果如下:

C:\> python main.py
3.14
22
11
在第 2 行,输出 PI 的值
在第 3 行,输出 max(11, 22) 的结果
在第 4 行,输出 min(11, 22) 的结果

标签:函数,fabs,Python,模块,import,math
From: https://www.cnblogs.com/10zhan/p/17071117.html

相关文章

  • Python基础——第一部分
    x进制类型定义\(0b****\):用二进制定义整型\(0o****\):用八进制定义整型\(0x****\):用十六进制定义整型a=0b1111b=15c=0o17d=0x0F输出:转换\(bin()\):......
  • 在 Python 中将一个 Legendre 系列添加到另一个 Legendre 系列
    要将一个Legendre系列添加到另一个系列,请使用Python中的polynomial.legendre.legadd()方法嘟嘟。该方法返回一个数组,表示其总和的勒让德系列。返回两个勒让德系列c1+......
  • 为什么你应该使用NumPy数组而不是嵌套的Python列表?
    在本文中,我们将向您展示为什么使用NumPy数组而不是嵌套的Python列表,以及它们之间的异同。PythonNumPyLibraryNumPy是一个Python库,旨在有效地处理Python中的数组。它快......
  • Python更适合某些编程需求吗?
    在本文中,我们将讨论Python是否更适合某些编程需求?比如竞争性编码。答案是肯定的;Python更适合编码。它在短时间内用更少的行数编写代码。基于产品的公司需要优秀的编码人......
  • #Python 数据查询功能,对标V-LOOKUP
    日常办公中,我们经常会遇到需要匹配表,匹配对应数据的场景,在EXCEL中,我们习惯使用VLOOKUP函数或者是X-LOOKUP函数,今天学习的是Python,pandas库中的匹配功能。首先导入所需的pa......
  • paramiko模块及公钥私钥
    目录paramiko模块paramiko模块基本使用公钥私钥paramiko模块使用公钥私钥paramiko模块上传下传文件paramiko模块上传下传封装成类paramiko模块paramiko模块功能:通过pyth......
  • python中关于if的规定
    Python程序语言指定任何非0和非空(null)值为true,0或者null为false。翻译过来就是:0,None,""为false,其它都为true。如下代码所示:if__name__=='__main__':ifnot......
  • 【Python】type、isinstance、issubclass详解
    【Python】type、isinstance、issubclass详解大家好,我们的gzh是朝阳三只大明白,满满全是干货,分享近期的学习知识以及个人总结(包括读研和IT),跪求一波关注,希望和大家一起努力、......
  • 【Python】python深拷贝和浅拷贝(一)
    【Python】python深拷贝和浅拷贝(一)大家好,我们的gzh是朝阳三只大明白,满满全是干货,分享近期的学习知识以及个人总结(包括读研和IT),跪求一波关注,希望和大家一起努力、进步!!定义直......
  • 【Python】python深拷贝和浅拷贝(二)
    【Python】python深拷贝和浅拷贝(二)大家好,我们的gzh是朝阳三只大明白,满满全是干货,分享近期的学习知识以及个人总结(包括读研和IT),跪求一波关注,希望和大家一起努力、进步!!前言上......