Python常用库
2019-05-18 本文已影响0人
Recalcitrant
Python常用库
一、time:时间处理模块
import time
1.time.time()
time time() 返回当前时间的时间戳(1970纪元后经过的浮点秒数)。
import time
print(time.time())
运行结果
2.datetime.datetime()
import datetime
class datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)
- MINYEAR <= year <= MAXYEAR
- 1 <= month <= 12
- 1 <= day <= number of days in the given month and year
- 0 <= hour < 24
- 0 <= minute < 60
- 0 <= second < 60
- 0 <= microsecond < 1000000
这是datetime.datetime参数的取值范围,如果设定的值超过这个范围,那么就会抛出ValueError异常。
其中year,month,day是必须参数。
3.strftime() 和 strptime()
- 由datetime转换成字符串:datetime.strftime()
- 由字符串转换成datetime:datetime.datetime.strptime()
二、目录操作模块
1.获取当前工作目录
import sys
print(sys.path[0])
2.获取执行命令的位置
import os
print(os.getcwd())
3.路径拼接
import os
os.path.join('/Users/pangao', 'test.txt')
# /Users/pangao/test.txt'
4.路径拆分
- os.path.split() 函数:拆分路径
import os
os.path.split('/Users/pangao/test.txt')
# ('/Users/pangao/', 'test.txt')
- os.path.splitext()函数:直接获取文件扩展名
import os
os.path.splitext('/Users/pangao/test.txt')
# ('/Users/pangao/test', '.txt')
5.文件重命名
import os
os.rename('test.txt', 'test.py') #重命名
6.删除文件
import os
os.remove('test.txt') #删除
7.复制文件
import shutil
shutil.copyfile('test.txt', 'test.py')
8.遍历文件夹下的文件
- 方法1
import os
for filename in os.listdir('./'):
print(filename)
- 方法2
import glob
for filename in glob.glob('*.py'):
print(filename)
- 方法3
import os
for fpathe, dirs, fs in os.walk('./'):
print(fpathe)
print(dirs)
print(fs)
for f in fs:
print(os.path.join(fpathe, f))
9.判断文件是否存在
import os
os.path.isfile('test.txt') # 如果不存在就返回False
10.判断目录是否存在
import os
os.path.exists(directory) #如果目录不存在就返回False
三、random:伪随机数生成器
1.导入库
import random
2.随机整数
from random import randint
randint(a,b)
返回随机整数 N, N满足 a <= N <= b。
四、collections模块
该模块实现了专门的容器数据类型,为Python的通用内置容器提供了替代方案。 以下几种类型用的很多:
- defaultdict (dict子类调用工厂函数来提供缺失值)
- Counter (用于计算可哈希对象的dict子类)
- deque (类似于列表的容器,可以从两端操作)
- namedtuple (用于创建具有命名字段的tuple子类的工厂函数)
- OrderedDict (记录输入顺序的dict)
1.defaultdict
2.Counter:计数器
(1)导入库
from collections import Counter
(2)Counter类创建
# 创建一个空的Counter类
c = Counter()
# 从一个可迭代对象(list、tuple、dict、字符串等)创建
c = Counter(iterable)
(3)计数器键值对的增删查
- 计数值的访问
c["计数键"]
- 计数器的更新
# 使用另一个可迭代对象更新
c.update(iterable)
- 计数键的删除
del c["计数键"]
(4)计数器常用操作
- elements()
返回一个迭代器,每个元素重复计数的个数。元素顺序是任意的。如果一个元素的计数小于1, elements() 就会忽略它。 - most_common([n])
返回一个列表,提供 n 个频率最高的元素和计数。 如果没提供 n ,或者是 None , most_common() 返回计数器中的 所有 元素。相等个数的元素顺序随机。 - subtract([iterable-or-mapping])
从 迭代对象 或 映射对象 减去元素。像 dict.update() 但是是减去,而不是替换。输入和输出都可以是0或者负数。
示例:
sum(c.values()) # 所有计数的总数
c.clear() # 重置Counter对象,注意不是删除
list(c) # 将c中的键转为列表
set(c) # 将c中的键转为set
dict(c) # 将c中的键值对转为字典
c.items() # 转为(elem, cnt)格式的列表
Counter(dict(list_of_pairs)) # 从(elem, cnt)格式的列表转换为Counter类对象
c.most_common()[:-n:-1] # 取出计数最少的n-1个元素
c += Counter() # 移除0和负值
3.deque
4.namedtuple
5.OrderedDict
五、jieba:中文分词(第三方库)
1.导入库
import jieba
2.分词
1.cut
cut(sentence, cut_all=False, HMM=True)
sentence:需要分词的字符串
cut_all:用来控制是否采用全模式
HMM:用来控制是否使用 HMM 模型
2.lcut
lcut(需要分词的字符串)
lcut(*args, **kwargs)
直接返回分词结果列表。
六、WordCloud:词云可视化(第三方库)
import wordcloud
cy = wordcloud.WordCloud() # 生成词云对象
cy.generate("wordcloud by Python") # 加载词云文本
cy.to_file("wordcloud.png") # 输出词云文件