模块(Module)
模块是一个python文件(.py),拥有多个功能相近的函数或类。
便于代码复用,提高编程效率,提高了代码的可维护性。
避免函数名和变量名冲突。
包(Package)
为了避免模块名冲突,Python引入按目录来组织模块的方法。
一个包对应一个文件夹,将功能相近的模块(Python文件),放 在同一个文件夹下。
在作为包的文件夹下有一个__init__.py文件。
子包:子目录中也有__init__.py文件。
库(Liberay):
具有相关功能的模块或包的集合。
包的结构
导入模块/包/库
导入整个包
import 名称 as 别名
导入包中指定的模块或者子包
from 模块/包名称 import 函数名 as 函数别名
入语句的作用域:
在程序顶部导入模块,作用域是全局的。
在函数的内部导入语句,作用域就是局部的。
导入顺序:
python 标准库/模块
python 第三方库/模块
自定义模块
使用模块/包/库中的函数和变量
import math
print(math.pow(2,3))
from math import pow,sqrt
print(pow(2,3))
print(sqrt(16))
from math import sqrt as s
print(s(16))
自定义模块
新建mymodule.py
def print_str(str):print(str)def sum(a,b):return a+b
在相同文件夹下创建调用程序6.py
import mymodule as mm
mm.print_str("python")
print(mm.sum(2,3))
Python标准库中的模块
sys模块:提供有关Python运行环境的变量和函数
import sys
#sys.platform 获取当前操作系统
print(sys.platform)
#sys.path 获取指定模块搜索路径
print(sys.path)
#sys.argv 获取当前正在执行的命令行参数的参数列表
print(sys.argv)
#sys.path.append("路径")退出python环境后添加路径消失
sys.path.append("C:\\Users\\10618\\Desktop\\人工智能与机器学习")
platform模块:获取操作系统的详细信息和与Python有关的信息。
import platform
#获取操作系统名称及版本号信息
print(platform.platform())
#获取操作系统类型
print(platform.system())
#获取操作系统的版本信息
print(platform.version())
#获取计算机的处理器信息
print(platform.version())
#获取Python的版本信息,包括Python的主版本、编译版本号和编译时间等信息
print(platform.python_build())
math模块:提供了常用的数学运算。
import math
x=3
y=5
a=3
print(math.e) #返回自然对数e的值
print(math.pi) #返回π的值
print(math.exp(x)) #返回e的x次幂
print(math.fabs(x)) #返回x的绝对值
print(math.ceil(x)) #返回大于等于x的最小整数
print(math.floor(x)) #返回小于等于x的最大整数
print(math.log(x,a)) #返回logax,如果不指定参数a,则默认使用e
print(math.log10(x)) #返回log10x
print(math.pow(x,y)) #返回x的y次幂
print(math.sqrt(x)) #返回x的开平方
random模块:生成随机数。
import random
a=2
b=9
x=[1,2,3,4,5,6,7,8,9,10]
print(random.random()) #生成一个0到1的随机浮点数
print(random.uniform(a, b)) #生成一个指定范围内的随机浮点数。其中a是下限,b是上限
print(random.randint(a, b)) #生成一个指定范围内的随机整数。a是下限,b是上限
print(random.choice(x)) #从序列中随机获取一个元素。参数seq表示一个有序类型,可以是一个列表、元组或者字符串
random.shuffle(x)
print(x) #将一个列表x中的元素打乱
小数和分数处理模块
decimal模块:表示和处理小数。
参考链接:https://finthon.com/python-decimal/
a=3.2
b=4.1
print(a+b)
fractions模块:表示和处理分数。
参考链接:https://www.runoob.com/note/24857
from fractions import Fraction
x=Fraction(1,3)
y=Fraction(4,6)
print(x+y)
时间处理模块
time:返回当前时间的时间戳
参考链接:http://qinxuye.me/article/details-about-time-module-in-python/
datetime:提供了处理日期和时间的类
参考链接:https://blog.csdn.net/gty931008/article/details/80254806
calendar:提供与日历相关的其他有用功能
参考链接:https://blog.csdn.net/y472360651/article/details/82291753