python 库的使用学习笔记

python 库的使用

最大第三方库网址:https://pypi.org

安装方法

1. 使用pip命令安装第三方库。(命令行下执行,联网安装)

D:\>pip -h   #列出该命令的帮助信息
D:\>pip install <第三方库名>  #安装指定的第三方库
D:\>pip install -U <第三方库名>  #使用-U标签更新已安装的第三方库
D:\>pip uninstall <第三方库名>  #卸载已经安装的指定的第三方库
D:\>pip download <第三方库名>  #下载但不安装指定的第三方库
D:\>pip show <第三方库名>  #列出指定第三方库的详细信息(库的介绍、使用方法)
D:\>pip search <关键词>  #根据关键词在名称和介绍中搜索第三方库
D:\>pip list   #列出当前系统已经安装的第三方库

2. 集成安装方法

结合开发程序安装,安装Anaconda, 相对标准的数据开发环境,比idle更加丰富多样,支持800个第三方库。
网址:https://www.continuum.io

3. 文件安装的方法。

一、time库的使用

1.time库是python中处理时间的标准库。

1.1 使用方法:(最典型最直接的python标准库的使用方法)

import time
time.<b>()

1.2 time库包含三类函数:
1. 时间获取:time() ctime() gmtime()

1.time():获取当前的时间戳,得到浮点数,是计算机内部的时间值。
代码:>>>import time
time.time()
表示的是1970年1月1日00:00到当前时间,以秒为单位的数值。
2.ctime():获取当前时间并以异读方式表示,返回字符串。
代码:>>>import time
time.ctime()
2.gmtime():获取当前时间,该时间计算机可以进行处理。
代码:>>>import time
time.gmtime()
可以生成struct_time格式。

2. 程序计时:
sleep()perf_counter()
测量起止动作所经历时间的过程,包括测量时间perf_counter() 和产生时间sleep() 两部分。

perf_counter() :返回一个CPU级别的精准时间计数值,单位为秒,由于起点值不确定,连续调用差值才有意义。(可以获取计算机CPU以其频率运行的时钟,以纳秒计算。)

>>>start = time.perf.counter()
>>>end = time.perf.counter()
>>>end -  start

sleep() :让程序休眠s秒时,单位是秒,可以是浮点数类型。

>>>def wait():
       time.sleep(2.2)
>>>wait()    #程序将等待2.2秒后退出,即程序休眠2.2秒,停滞。

3. 时间格式化\输出:
strftime()
将时间以合理方式展示出来的方法,类似字符串的格式化,需要一个展示模板,展示模板由特定的格式化控制符组成。
strptime():
可以将一个字符串变成一个计算机可以内部操作的一个时间

strftim (tpl,ts):有两个参数
第一个参数tpl:格式化的模板字符串参数,定义输出效果。
第二个参数ts:计算机内部的时间类型的变量,是gmtime()输出的格式。
举例:>>>t = time.gmtime()
      >>>time.strftime("%Y-%m-%d %H:%M:%S,t) (#六个时间格式化控制符)
      ‘2021-04-28 12:59:46’
strptim (str,tpl):有两个参数
第一个参数str:字符串形式的时间值
第二个参数tpl:格式化模板字符串,定义输出效果。
可以将一个字符串变成一个计算机可以内部操作的一个时间,可进一步转化为时间浮点数。

4. 控制符:所有的控制符都是以%加字符的形式出现。
%A:取值范围是Monday~Sunday,表示星期。
%a:取值范围是Mon~Sun,表示星期缩写。
%B:取值范围是January~December,表示月份名。
%b:取值范围是Jan~Dec,表示月份名缩写。
%d:取值范围是01~31,表示月份名缩写。
%M:取值范围是00~59,表示分钟。
%m:取值范围是01~12,表示月份。
%H:取值范围是00~23,表示24小时时间。
%I:取值范围是01~12,表示12小时时间。
%p:取值范围是AM/PM,表示上下午。
%S:取值范围是00~59,表示秒。
%Y:取值范围是0000~9999,表示年份。


二、random库的使用(标准库)

2. random库是python中生成随机数的标准库。

2.1 伪随机数:

计算机不能产生真正的随机数,只有采用梅森旋转算法生成的伪随机数,也被称之为随机数。

2.2 random库概述:
random库包括两类函数,常用共8个。
基本随机数函数:seed(),random()

扩展随机数函数:randint(),getrandbits(),uniform(),randrange(),choice(),shuffle()
2.3 基本随机数函数:
随机数种子根据算法来产生随机数。(梅森旋转算法)

seed(a=None):初始化给定的随机数种子
>>>random.seed(10)     #产生种子10所对应的序列

random函数:random()生成一个[0.0,1.0)之间的随机小数。

>>>random.random()
0.5714025946899135

举例:

>>>import random
>>>random.seed(10)
>>>random.random()
0.5714025946899135
>>>random.random()
0.4276543909864132   #种子只需要给一次,随机数随着每次调用而产生不同随机数

注意:当不给种子时,默认的种子是当前第一次调用random函数时的当前系统所对应的时间,该时间精确到微妙,不可再现随机过程,不能复现。

>>>import random
>>>random.seed(10)
>>>random.random()
0.5714025946899135
>>>random.seed(10)
>>>random.random()
0.5714025946899135  #产生相同的随机数

2.4 扩展随机数函数:

1. randint(a,b):生成一个[a,b]之间的整数。

>>>random.randint (20,100)
88

2. randrange(m,n[,K]):生成一个[m,n)之间以k为步长的随机整数。

>>>random.randrange(10,100,10)
50

3. getrandbits(K):生成一个k比特长的随机整数。

>>>random.getrandbits(16)
37785       #16个比特长

4. uniform(a,b):生成[a,b]之间的随机小数。

>>>random.uniform(10,100) #python小数为小数点后16位。
12.865309862431567

5. choice(seq):从序列seq中随机选择一个元素。

>>>random.choice([1,2,7,8,9,0])
2

6. shuffle(seq):将序列seq中的元素随机排列,返回打乱后的序列。

>>>s=[1,2,3,4,5,6] #将一个序列赋值给s,python中代码可以写在一行用,需要用;隔开,但是不建议如此写,可读性比较差。
>>>random.shuffle(s)
>>>print(s)
[2,4,6,1,5,3]

三、PyInstaller库的使用

(第三方库,需要额外安装,不是标准库,运用windows中的command安装),只有打包才需要安装pyinstaller,打包之后的.exe可以在计算机中直接执行,不需要安装python环境,也不需要安装pyinstaller

3. 安装命令——cmd下输入:pip install pyinstaller。

3.1 使用说明:使用cmd命令行,不能采用IDLE环境运行pyinstaller。

pyinstaller -F <文件名.py>

3.2 常用参数:
1.-h——查看帮助
pyinstaller -h可以显示工具所完成的功能


2.--clean——清理打包过程中的临时文件pyinstaller --clean删除打包 文件


3.-D,--onedir——默认值,生成dist文件


4.-F,--onefile——在dist文件夹中只生成独立的打包文件,可以完整实现.py文件的功能


5.-i<图标文件名.ico>——指定打包程序使用的图标(icon)文件,关联一个图标。

pyinstaller -i LG.ico -F Ligou.py  #将一个.py文件与一个图标相关联,产生一个包含预定图标的文件,实现打包操作。

四、jieba库的使用(第三方库)——中文分词

4 安装方式:

cmd下使用——pip install jieba(计算机要联网)


4.1 主要功能:
jieba分词依靠中文词库,有三种模式——精确模式(把文本精确分开,不存在冗余单词)、全模式(把文本中所有可能的词语扫描出来,有冗余)、搜素模式(在精确模式的基础上,对长词再次切分)

4.2 常用参数:
1.jieba.lcut(s)——精确模式,返回一个列表类型的分词结果

>>>jieba.lcut("桂林是一个美丽的地方")   #l表示一个列表
['桂林','是','一个','美丽的','地方']

2.jieba.lcut(s,cut_all=True)——全模式,返回一个列表类型的分词结果,存在冗余

>>>jieba.lcut("桂林是一个美丽的地方",cut_all=True)   #l表示一个列表
['桂林','林是','一个','美丽','的','地方']

3.jieba.lcut_for_search(s)——搜索引擎模式,返回一个列表类型的分词结果,存在冗余

>>>jieba.lcut_for_search("桂林是一个美丽的地方")   #l表示一个列表
['桂林','林是','一个','美丽','的','美丽的','美丽','的','地方']  #先按照精确方法分词,之后对长的词再次分词

4.jieba.add_word(w)——向分词词典增加新词w

jieba.add_word("好好学习")     #将定义的新词加入到词库中

五、wordcloud库的使用(第三方库)——词云展示

可以将一段文本变成词云,词云就是将词语通过图形可视化的方式直观和艺术的展示出来。

5 安装方式:pip installer wordcloud (cmd下)

5.1 使用说明:
1.wordcloud库把词云当作一个WordCloud对象,使用库的时候,库名是全小写的wordcloud,但是这个库中的具体词云,是一个有大写有小写的WordCloud,本身是一个对象。
2.wordcloud可以根据文本中词语出现的频率等参数绘制词云。
3.绘制词云的形状、尺寸、颜色都可以设定。

wordcloud.WordCloud() #在wordcloud小写库中的WordCloud是一个代表
一个文本对应的词云的对象,一个词云就是一个WordCloud对象。

5.2 wordcloud库常规方法:

注意:以WordCloud对象为基础,可以向对象中配置参数、加载文本、输出文件,将程序对应的词云输出到文件中。

w = wordcloud.WordCloud() #用wordcloud库中的WordCloud来表明一个词云,生成一个词云对象,对象的变量是w。
可以向词云对象w赋予特定的文本参数及操作,将词云输出成文件

常规方法:
1.w.generate(txt)——向WordCloud对象w中加载文本txt**

>>>w.generate("LG is a person") #指的是有一个词云对象w,将一段文本加载到词云对象中,词云相当于一个程序逻辑。
然后我们向他输入一段文本,程序逻辑中就会根据文本绘制出一个词云图像

2.程序的词云输出成文件才能看到词云的效果:w.to_file(filename),将词云输出为图像文件,.png或.jpg格式。

>>>w.to_file("oto.png")  #oto.png为文件名

3.词云绘制的步骤介绍:(配置对象-加载词云文本-生成图片

一、先生成一个词云对象,配置对象参数。
二、采用w.generate(txt)方法加载一段文本到词云对象中。
三、将程序词云对象输出成一个文件,变成一个可以看到的图形文件。

import wordcloud
c = wordcloud.WordCloud() #生成一个词云对象赋值给变量c
c.generate("LG is a fog")  #将一段文本加载到词云对象中
c.to_file("Htggg.png")   #将词云效果输出到Htggg.png文件中
最终会生成一个默认宽度为400像素和高度为200像素的图片

由图片变成词云,wordcloud做了四件事情:

一、分隔:首先对于一个文本,wordcloud库以空格为分隔符号,将文本分隔为单词
二、统计:在文本中统计单词出现的次数,次数越多,显示的词云效果会越大,字数少的,显示的字体会较小,将很短的单词过滤掉。
三、字体:根据统计配置字号,根据统计单词出现的次数为不同单词配置不同的字号。
四、布局:布局单词的颜色环境尺寸。

注意:只需要给wordcloud库一个由空格分隔的大字符串就可以通过代码实现词云效果。


5.3 wordcloud库配置对象参数:

1.width——指定词云对象生成的宽度,默认是400像素。

w = wordcloud.WordCloud(width=500)

2.height——指定词云对象生成的高度,默认是200像素。

w = wordcloud.WordCloud(height=500)

3.min_font_size——指定词云中字体的最小字号,默认是4号。

w = wordcloud.WordCloud(min_font_size=16)

4.max_font_size——指定词云中字体的最大字号,默认是根据高度自动调节。

w = wordcloud.WordCloud(max_font_size=21)

5.font_step——指定词云中步进间隔,默认是1。(只出现一次的单词用最小字号显示,次数越多,字号越大,从最小字号增加到最大字号时,其增加过程中的步进间隔叫做font_step)

w = wordcloud.WordCloud(font_step=3)

6.font_path——指定字体文件的路径,默认为none。可以指定显示词云中出现字符的字体,在程序设计中指定一个路径,其实就是指定字体文件,默认的情况下字体选择默认的字体来显示词云,比如微软雅黑字体。(比较重要)

w = wordcloud.WordCloud(font_path="msyh.ttc") #赋一个字体文件,文件名叫msyh.ttc,
其中msyh指的是微软雅黑,.ttc是字体文件的后缀。
可以用font_path指定中文出现的文件字体

7.max_words——指定词云显示的最大单词数量,默认是200。

w = wordcloud.WordCloud(max_words=28) 

8.stop_words——指定词云的排除词列表,即不显示的单词列表。

w = wordcloud.WordCloud(stop_words={“LG”})  #不让LG出现在词云效果中,给定一个集合类型,排除集合中出现的单词内容

9.mask——默认的词云效果是矩形,指定词云的形状。用mask参数给定一个图片文件的特定形式,需要引用imread()函数

>>>from spicy.misc import imread #调用函数
>>>mk = imread("lg.png") #读取图片效果
>>>w = wordcloud.WordCloud(mask=mk) #改变显示图形形状

9.background_color——指定词云图片的背景颜色,默认为黑色

w = wordcloud.WordCloud(background_color="green") #更改词云背景颜色为绿色

应用实例1:(英文词云)

import wordcloud
txt = "LG eat apple,you hate it"
w = wordcloud.WordCloud(\
        background_color = "green")
w = generate(txt)
w.to_file("plgg.png")

应用实例2:(中文词云,wordcloud库用空格来分隔单词,中文中没有办法使用空格来区分单词,需要先对中文文本进行分词,采用jieba库)

import jieba
import wordcloud
txt = "广西桂林是一个风景秀丽的地方,很多人喜欢那儿"
w = wordcloud.WordCloud(\
        width = 1000,font_path="mysh.ttc",height=800)
w.generate(" ",join(jieba.lcut(txt))) #向词云对象中加载一段由空格区分的单词文本
#先用jieba.lcut对文本进行分词,生成一个列表变量,其中的每一个元素是分隔之后的单词
然后需要这样的单词以文本的形式用空格进行分隔,采用.join函数,在元素之间增加空格。
w.to_file("llgg.png")  #将词云输出

六、os库的使用(第三方库)——提供通用、基本的操作系统交互功能

6 主要介绍:

路径操作:os.path子库,处理文件路径信息,以path为路口,用于操作和处理文件的路径。(路径其实就是一种字符串

import os.path
import os.path as op    #op指的是子库的别名。

一些os.path子库的函数如下:

1-os.path.abspath(path)——返回path在当前系统中的绝对路径。

>>>os.path.abspath("file.txt")    #返回file.txt的绝对路径
'c:\\Users\\演绎秋景\\file.txt

2-os.path.normpath(path)——归一化path的表示形式,统一用\\分隔。(在python中,可以使用一个\\\或者//等几种方式表示文件的路径,使用normpath函数可以将这样的路径统一为使用//的形式。路径其实就是一种字符串,归一化后便于字符串处理。)

>>>os.path.normpath("C://Python//file.txt")     #调用函数归一化路径处理 
'C:\\Python\\file.txt'        #归一化路径结果

3-os.path.relpath(path)——返回当前程序与文件之间的相对路径(relative path)

>>>os.path.relpath("C://Python//file.txt")     #返回python程序与所调用的文件之间的相对路径
'..\\..\\..\\..\\..\\Python\\file.txt'        #返回当前程序与目录文件的相对路径结果

4-os.path.dirname(path)——返回python中的目录名称。

>>>os.path.dirname("C://Python//file.txt")     
'C://Python'        #返回目录名称

5-os.path.basename(path)——返回python中最后的文件名称。

>>>os.path.dirname("C://Python//file.txt")     
'file.txt'        #返回文件名称

6-os.path.join(path,*paths)——组合path和paths,返回一个路径字符串。

>>>os.path.join("C:/", "Python/file.txt")     #能够将path和*path的路径进行组合并返回一个字符串
'C:/Python/file.txt'        #组合并返回

7-os.path.exists(path)——判断path路径对应文件或目录是否存在,返回True或False。

>>>os.path.exists("C://Python//file.txt")     #判断目录是否存在
True     #文件存在,返回结果

8-os.path.isfile(path)——判断path所对应是否为已存在文件,返回True或False。

>>>os.path.isfile("C://Python//file.txt")     #判断目录是否存在
True     #文件存在,返回结果

9-os.path.isdire(path)——判断path所对应是否为已存在目录,返回True或False。

>>>os.path.isdir("C://Python//file.txt")     #判断目录是否存在
False    #目录不存在,返回结果

文件访问时间相关的函数:

10-os.path.getatime(path)——返回path对应文件或目录上一次的访问(access)时间。

>>>os.path.getatime("C://Python//file.txt")    
1618356722.7551715       #返回时间对应的内部数字值

11-os.path.getatime(path)——返回path对应文件或目录最近一次的修改(modify)时间。

>>>os.path.getmtime("C://Python//file.txt")    
1618356722.7551715    #返回时间对应的内部数字值

12-os.path.getctime(path)——返回path对应文件或目录的创建(create)时间。

>>>time.ctime(os.path.getctime("C://Python//file.txt") )
'Sun Feb 11 13:34:54  2021'          #调用time.ctime将内部数值转换为可读的时间。

13-os.path.getsize(path)——返回path对应文件的大小,以字节为单位。

>>>os.path.getsize("C://Python//file.txt") 
177266    

2. 进程管理:启动系统中的其它程序(使用编写的python程序,去调用其它的外部程序)

os.system(command)   #执行程序或命令command

在Windows操作系统中,调用os.system函数,将返回调用这个函数结果的返回信息

>>>import os
>>>os.system("C:\\Windows\\System64\\calc.exe") 
0               #返回一个0

#将计算器程序的文件路径作为参数放置到os.system函数中。
执行该语句后,计算器程序运行出来,本函数调用结束返回一个0,指的是程序正确运行。

在Windows操作系统中,调用os.system函数,可以给该程序赋予相关的参数。

>>>import os
>>>os.system("C:\\Windows\\System64\\mspaint.exe \
D:\\Python\\LG.png   #给定画图程序并指定一个文件赋予默认程序,让其默认打开,此处该程序为画图程序mspaint。
0               #返回一个0

3. 环境参数:获得或改变系统硬件信息等环境参数。

1-os.chdir(path)——修改(change)当前程序操作的路径。

>>>os.chdir("D:")    #将当前程序所关心的当前路径变换为D盘根目录下

2-os.getcwd()——返回程序当前的路径。

>>>os.getcwd()  
'D:\\'

3-os.getlogin()——获得当前系统登录的用户名称。

>>>os.getlogin()  
'LG'

4-os.cpu_count()——获得当前系统的cpu数量。

>>>os.cpu_count()
7

5-os.urandom(n)——获得n个字节的随机字符串,通常用于与操作系统相关的加解密运算。

>>>os.urandom(8) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值