个人主页:天寒雨落的博客_CSDN博客-初学者入门C语言,python,数据库领域博主
💬 热门专栏:python_天寒雨落的博客-CSDN博客
每日赠语:没有窘迫的失败,就不会有自豪的成功;失败不可怕,只要能从失败中站起来。
目录
一、概述
1.模块
优点
2.包
3.库
4.模块、包或库的导入
二、常用标准库模块
1.turtle(绘制线条、圆及其他形状(文本)图形的模块)
1.画布
2.画笔
2.random(生成随机数的模块)
1.random.random()函数
2.random.uniform()函数
3.random.randint()函数
4.random.randrange()函数
5.random.choice()函数
6.random.sample()函数
7.random.shuffle()函数
3.time(格式化日期和时间的模块)和datetime(日期和时间处理的模块)
time模块
datatime模块
4.os(提供使用操作系统功能和访问文件系统简便方法的模块)
1.获取平台信息
2.目录、文件操作
3.os.path模块获取文件属性
4.调用系统命令
5.sys(提供对Python解释器相关操作的模块)
sys.platform
sys.getsizeof()
6.timeit(性能度量的模块)
举例
7.zlib(数据打包盒压缩的模块)
举例
三、第三方库
1.NumPy
np.array()函数
2.Pandas
pandas.Series(data,index,dtype,copy)
pandas.DataFrame(data,index,columns,dtype,copy)
3.SciPy
4.Matplotlib
5.Jieba
6.PyInstaller
四、典型案例
代码实现
执行结果
在Python中,模块是一个以.py 结尾的Python文件,包含了 Python 对象和语句。
Python模块文件所在的目录,并且在该目录下必须有一个名为_init_.py的文件(Python3.3之前必须,之后不是必须)
具有相关功能的包和模块集合,如Python标准库、NumPy库等。
turtle是Python内嵌的绘制线、圆及其他形状(包括文本)的图形模块。
画布是turtle模块展开用于绘图的区域。
turtle.screensize()函数:设置画布。一般格式:turtle.screensize(width,height,bg)。
参数对应的分别是宽,高,背景颜色。
turtle.setup()函数:设置画布。一般格式:turtle.setup(width,height,startx,starty)。
参数对应的分别是宽,高,画布左上角顶点在窗口的坐标位置。
(1)画笔状态:turtle模块绘图使用位置方向描述画笔的状态。
(2)画笔属性:画笔的属性包括画笔的颜色、宽度和移动速度等。
(3)绘图命令:操纵turtle模块绘图有许多命令,通过相应函数完成。绘图命令通常分为三类:画笔运动命令、画笔控制命令和全局控制命令。
用于生成一个[0, 1)之间的随机浮点数。
用于生成一个指定范围内的随机浮点数。一般格式为:random.uniform(a,b)
用于生成一个指定范围内的整数。一般格式为:random.randint(a,b)
用于生成指定范围、指定步长的随机整数。一般格式为:random.randrange([start],stop[,step])
从序列对象中获取一个随机元素。一般格式为:random.choice(sequence)
从指定序列对象中随机获取指定长度的片段。一般格式为:random.sample(sequence,k)
用于将一个序列对象中的元素打乱。一般格式为:random.shuffle(sequence[,random])
主要用于时间访问和转换,提供了各种与时间相关的函数。
date类
from datetime import date
date类为日期类。
创建一个date对象的一般格式为:d = datetime.date(year,month,day)
time类
from datetime import time
time类为时间类。
创建一个time对象的一般格式为:t = time(hour,[minute[,second,[microsecond[,tzinfo]]]])
datetime类
from datetime import datetime
datetime类为日期时间类。
一般格式为:dt = datetime(year,month,day,hour,minute,second,microsecond,tzinfo)
使用os模块的一些属性和方法可以获取系统平台的相关信息。
方法 | 功能说明 |
os.getcwd() | 获取当前工作目录 |
os.listdir(path) | 获取path目录下的文件和目录列表 |
os.environ | 包含系统环境变量和值的字典 |
os.name | 查看当前系统平台 |
os.extsep | 当前操作系统所使用的文件扩展名分隔符 |
os.sep | 当前操作系统所使用的路径分隔符 |
os.pathsep | 查看用于分割文件路径的字符串 |
os.linesep | 查看当前平台使用的行终结符 |
os.get_exec_path() | 返回可执行文件的搜索路径 |
方法 | 功能说明 |
os.chdir(path) | 把path设为当前工作目录 |
os.mkdir(newdir) | 创建新目录newdir |
os.rmdir(dir) | 删除目录dir |
os.listdir(path) | 列出指定目录path下所有文件 |
os.curdir | 当前文件夹 |
os.remove(path) | 删除指定的文件,要求用户拥有删除文件的权限,并且文件没有只读或其他特殊属性 |
os.rename(src, dst) | 重命名文件或目录,可以实现文件的移动,若目标文件已存在则抛出异常,不能跨越磁盘或分区 |
os.replace(old, new) | 重命名文件或目录,若目标文件已存在则直接覆盖,不能跨越磁盘或分区 |
os.scandir(path='.') | 返回包含指定文件夹中所有DirEntry对象的迭代对象,遍历文件夹时比listdir()更加高效 |
os.startfile(filepath [, operation]) | 使用关联的应用程序打开指定文件或启动指定应用程序 |
方法 | 功能说明 |
os.path.abspath(path) | 返回给定路径的绝对路径 |
os.path.basename(path) | 返回指定路径的最后一个组成部分(即文件名) |
os.path.commonpath(paths) | 返回给定的多个路径的最长公共路径 |
os.path.commonprefix(paths) | 返回给定的多个路径的最长公共前缀 |
os.path.dirname(p) | 返回给定路径的文件夹部分 |
os.path.exists(path) | 判断文件是否存在 |
os.path.getatime(filename) | 返回文件的最后访问时间 |
os.path.getctime(filename) | 返回文件的创建时间 |
os.path.getmtime(filename) | 返回文件的最后修改时间 |
os.path.getsize(filename) | 返回文件的大小 |
“sys”即“system”,“系统”之意。该模块提供了一些接口,用于访问 Python 解释器自身使用和维护的变量,同时模块中还提供了一部分函数,可以与解释器进行比较深度的交互。
可以得到关于运行平台更详细的信息。
返回的是作用对象所占用的字节数。
sys.exit(arg)
退出程序机制
测试函数myFun()中代码的执行时间。
代码
import timeit
def myFun():sum = 0for i in range(1,100):for j in range(1,100):sum = sum + i * j
t1 = timeit.timeit(stmt=myFun,number=1000)
print("t1:",t1)
t2 = timeit.repeat(stmt=myFun,number=1000, repeat=6)
print("t2:",t2)
执行结果
使用zlib模块对字符串进行压缩和解压缩。
代码
import zlib
str = b'python,python,python'
print("压缩前: %s,字符个数%d."%(str,len(str)))
str_com = zlib.compress(str)
print("压缩后: %s, 字符个数%d."%(str_com,len(str_com)))
str_dec = zlib.decompress(str_com)
print("解压后: %s, 字符个数%d."%(str_dec,len(str_dec)))
执行结果
NumPy是基于Python的一种开源数值计算第三方库,它支持高维数组运算、大型矩阵处理、矢量运算、线性代数运算、随机数生成等功能。
一般格式为:numpy.array(object,dtype=None,copy=True,order=None,subok=False,ndmin=0)
Pandas是基于NumPy库的一种解决数据分析任务的工具库。主要功能有:创建Series(系列)和DataFrame(数据帧)、索引选取和过滤、算术运算、数据汇总和描述性统计、数据排序和排名、处理缺失值和层次化索引等。
能保存字符串、Bool值、数字等不同的数据类型。
创建一个数据帧,数据帧是二维的表格型数据结构,即数据以行和列的表格方式排列。与系列相比,数据帧使用得更普遍。
SciPy库是一款方便、易于使用、专为科学和工程设计的工具库,包括统计、优化、整合、线性代数、傅里叶变换、信号和图像处理、常微分方程求解等。
Matplotlib是一个基于Python、跨平台、交互式的2D绘图库,以各种硬拷贝格式生成出版质量级别的图形。
中文分词是中文文本处理的一个基础步骤。 在进行中文自然语言处理时,通常需要先进行分词。现在非常流行的、开源的中文分词库是Jieba。Jieba分词算法使用基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能生成词情况所构成的有向无环图(DAG);采用动态规划查找最大概率路径,找出基于词频的最大切分组合。
用来打包Python应用程序。打包时,Pyinstaller库会扫描Python程序的所有文档,分析所有代码找出代码运行所需的模块,然后将所有这些模块和代码放在一个文件夹里或一个可执行文件里。 用户就不用下载各种软件运行环境,如各种版本的Python和各种不同的包,只需要执行打包好的可执行文件就可以使用软件了。
使用turtle绘制表面填充正方体
import turtle #导入模块.
#画正方体正面.
n = 100 #正方体边长.
turtle.penup()
turtle.goto(-100,-50)
turtle.pendown()
turtle.pencolor('red') #画笔颜色为红色.
turtle.begin_fill()
turtle.fillcolor('red') #填充颜色为红色.
for i in range(4):turtle.forward(n)turtle.left(90)
turtle.end_fill()
#画正方体顶面.
turtle.penup()
turtle.goto(-100,n-50)
turtle.pendown()
turtle.pencolor('green') #画笔颜色为绿色.
turtle.begin_fill()
turtle.fillcolor('green') #填充颜色为绿色.
turtle.left(45)
turtle.forward(int(n * 0.6)) #倾斜边长为60.
turtle.right(45)
turtle.forward(n)
turtle.left(360 - 135)
turtle.forward(int(n * 0.6)) #倾斜边长为60.
turtle.end_fill()
#画正方体右侧面.
turtle.left(45)
turtle.penup()
turtle.goto(n-100,-50)
turtle.pendown()
turtle.pencolor('blue') #画笔颜色为蓝色.
turtle.begin_fill()
turtle.fillcolor('blue') #填充颜色为蓝色.
turtle.left(135)
turtle.forward(int(n * 0.6)) #倾斜边长为60.
turtle.left(45)
turtle.forward(n)
turtle.left(135)
turtle.forward(int(n * 0.6)) #倾斜边长为60.
turtle.right(90)
turtle.end_fill()
turtle.done()
👍+✏️+⭐️是对博主最大的鼓励与支持!!!