import collections

time,datetime 以及 calendar

主要用于封装一些关于集合类的相关操作,例如Iterable ,Iterator 提供了了⼀一些除了了基本数据类型以外的数据集合类型 (Counter, deque, OrderDict, defaultdict以及namedtuple)

Counter 计数器 用于计算可迭代对象中各个元素出现的个数

fromcollections importCounter

lst = ['猪肚鸡','纸包鱼','随便点','随便点']

print(Counter(lst)) #结果:Counter({'随便点': 2, '猪肚鸡': 1, '纸包鱼': 1})s = '这是在干嘛,我也不知道这是在干嘛'print(Counter(s))

#结果:Counter({'这': 2, '是':

2, '在': 2, '干': 2, '嘛': 2, ',': 1, '我':

1, '也': 1, '不': 1, '知': 1, '道': 1})

获取的结果与像字典一样使用,可以通过for I in计算器获取字典的key ,都不能直接使用字典特有的方法

2.deque双向队列

from collections importdeque

a=deque()

a.append('鲁班')#从右侧添加

a.append('李白')

a.appendleft('荆轲')#从左侧添加

a.appendleft('老夫子')## print(a.pop())#从右边弹出## print(a.pop())## print(a.pop())## print(a.pop())

print(a.popleft())#从左边弹出

print(a.popleft())print(a.popleft())print(a.popleft())#

# namedtuple 命名元组

# 给元组内的元素进行命名. 比如. 我们说(x, y) 这是一个元组. 同时. 我们还可以认为这一个点坐标. 这时, 我们就可以使namedtuple对元素进行命名

from collections importnamedtuple

p= namedtuple('中国坐标',['x','y'])#相当于下面的类的设置

classgg :def __init__(self,x,y):

self.x=x

self.y=y

a= p(2,3)print(a.x)#2

print(a.y)#3

print(a)#中国坐标(x=2, y=3)#

1.defaultdict:可以给字典设置默认值.当key不存在时.直接获取默认值:

#from collections import defaultdict#gg = defaultdict(list) #创建 不是字典,但是可以当做字典来用,创建一个类似字典的东西,当查找或者是获取这个中的key的时候,如果没有## 的话,就会自动在这个东西创建这个key ,并将这个key的值设置为一个可调用的类,例如这里设置的是list,表示如果没有查找到对对应的 key的值#的话,就会调用list,创建一个空的列表给这个key#### 通过for 循环的话,获取到的是key,#print(type(gg))### print(gg['hiahao '])#lst = [11.222,33,44,55,66,]#for i in lst:#if i < 66:#gg['不可以'].append(i)#else:#gg['可以'].append(i)#

#print(gg)#defaultdict(, {'不可以': [11.222, 33, 44, 55], '可以': [66]})## print(dict (gg))## for b in gg:## print(b)

import time

在时间模块中主要分为时间戳,结构化时间,格式化时间

time.time()获取当前的时间,显示的是时间戳,时间戳(timestamp). 使用的是从1970年年01月01日 00点00分00秒到现在共经过了了多少秒... 是一个float类型是数字

time.strftime(format, p_tuple=None)默认按照括号内的格式输出当前的时间一般使用的是time.strftime("%Y-%m-%d %H:%M:%S") p_tuple 是命名元组,传递过去的是格式化时间

time.localtime(seconds=None)默认输出当前的结构化时间

time.gmtime()获取格林尼治时间,结构化时间

strptime(string, format) 将字符串转化为结构化时间(字符串格式要与format的格式一致,见下:)

time.mktime(p_tuple)将结构化时间转化为时间戳

日期的格式化标准如下:

%y两位数的年份表示(00-99)

%Y四位数的年份表示(000-9999)

%m月份(01-12)

%d月内中的一天(0-31)

%H 24小时制小时数(0-23)

%I 12小时制小时数(01-12)

%M分钟数(00=59)

%S秒(00-59)

%a本地简化星期名称

%A本地完整星期名称

%b本地简化的月份名称

%B本地完整的月份名称

%c本地相应的日期表示和时间表示

%j年内的一天(001-366)

%p本地A.M.或P.M.的等价符

%U一年中的星期数(00-53)星期天为星期的开始

%w星期(0-6),星期天为星期的开始

%W一年中的星期数(00-53)星期一为星期的开始

%x本地相应的日期表示

%X本地相应的时间表示

%Z当前时区

常见用法:

#将某个时间的时间戳转换为普通的格式gg = time.localtime(32499999999)print(time.strftime('%Y-%m-%d %H:%M:%S',gg))

#将普通的格式化时间转化为时间戳(float)ss = '2999-11-19 17:46:39'gg = time.strptime(ss,'%Y-%m-%d %H:%M:%S')

print(time.mktime(gg))

时间差的计算

begin = "2018-11-14 16:30:00"end = "2018-11-14 18:00:10"begin_time_chuo =time.mktime(

time.strptime(begin, "%Y-%m-%d

%H:%M:%S"))

end_time_chuo = time.mktime(time.strptime(end, "%Y-%m-%d %H:%M:%S"))

time_cha = end_time_chuo - begin_time_chuo

1. 用时间戳计算出时间差(秒)

hour = int(time_cha //3600)

min = int(time_cha %3600 //60)

sec = int(time_cha% 3600 % 60)

print("时间差是 %s小时%s分钟%s秒"% (hour,min,sec))

2. 用通过结构化时间计算时间差

t = time.gmtime(time_cha) #最好用格林尼治时间。 否则有时差print("时间差是%s年%s月 %s天 %s小时%s分钟"% (t.tm_year-1970, t.tm_mon-1, t.tm_mday-1,t.tm_hour, t.tm_min ))

因为默认的格式化时间是1970年年01月01日 00点00分00秒

import random

print(random.random()) #随机取出 0-1 的小数print(random.uniform(3,11)) #随机取出3-11 的小数print(random.randint(3,11)) #随机取出3-11 的整数lst = ['a','b','c','d']

print(random.choice(lst)) #在列表中取出任意一个元素print(random.sample(lst,3)) #在列表中取出任意n个元素添加到新的列表中

lst1 = ['a','b','c','d']

random.shuffle(lst1) #将列表的顺序打乱print(lst1)

while1 :

print(random.uniform(1,2)) #随机取出3-11 的小数前闭后开

import os 使python具有操作系统的操作命令,例如创建,修改文件

os.getcwd() 获取当前的路径

os.chdir("文件夹名称’) 进入到某个文件夹中

os.rename(旧名字,新名字) 记住执行该命令的程序应该与被修改的文件是在同一个文件夹中的

os.makedirs('dirname1/dirname2') 可生成多层递归目录

os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推

os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname

os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,

os.listdir('dirname') 列出指定目录下的所有文件子⽬目录,包括隐藏文件,并以列表方式打印

os.remove() 删除一个文件

os.rename("oldname","newname") 重命名文件/目录

os.stat('path/filename') 获取文件/目录信息

os.system("bash command") 运行shell命令,直接显示

os.path

os.path.abspath(path) 返回path规范化的绝对路径

os.path.split(path) 将path分割成目录和文件名二元组返回

os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False

os.path.isabs(path) 如果path是绝对路径,返回True

os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False

os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False

os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略

os.sep 输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"

如果不在同一个文件夹也可以通过相对路径的方式进行修改

import sys 对应的是python解析器上的系统上的操作 系统参数获取

sys.path 返回模块的搜索路径变量的值(相当于python自身的环境变量)

sys.platform 返回操作系统平台名称

sys.version 获取Python解释程序的版本信息

sys.exit(n) 退出程序,正常退出时exit(0),错误退出sys.exit(1)

sys.argv 命令行参数List,第一个元素是程序本身路径

python常用内置模块-python常用的内置模块相关推荐

  1. python内置模块re_Python常用内建模块-re模块(正则表达式)

    正则表达式须知正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了.正则 ...

  2. python模块下载过程_常用的python模块及安装方法

    bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework ctypes:用来调用动态链接库 DBUti ...

  3. 常用的python模块及安装方法

    adodb:我们领导推荐的数据库连接组件 bsddb3:BerkeleyDB的连接组件 Cheetah-1.0:我比较喜欢这个版本的cheetah cherrypy:一个WEB framework c ...

  4. python语言的第三方库_常用的Python第三方库

    今天公司停电,没上班.跑上来更新个博客,跟大家分享一下我常用的几个第三方 Python 库.Python 语言之所以能够如此流行,除了本身内置许多程序库来保障快速开发之外,目不睱接的第三方库也是一大主 ...

  5. 你需要知道的20个常用的Python技巧

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|机器学习算法那些事 Python的可读性和简单性是其广受 ...

  6. 送你38个常用的Python库,数值计算、可视化、机器学习等8大领域都有了

    来源:大数据DT(ID:bigdatadt) 作者:李明江 张良均 周东平 张尚佳 内容摘编自<Python3智能数据分析快速入门> 本文约5200字,建议阅读10分钟. 本文为你总结了常 ...

  7. 初学者怎样看懂python代码_新手入门必看,最常用的Python代码片段

    对于编程开发人员来讲,Python语法一开始可能看起来很奇怪.如果我们看到Python使用其他编程语言(例如Java)完成常见的工作,那会不会很意思?我们常见的代码片段称为"代码惯用法&qu ...

  8. python counter函数定义_分享几个自己常用的Python高级函数

    哈喽大家好我是蚂蚁,今天给大家分享几个我自己常用的Python相对高级点的函数,这些函数在特定的场景下能节省大量的代码. 简单列举一下我想要介绍的几个函数: counter:计数器 defaultdi ...

  9. python常用命令汇总-python数据分析之pandas常用命令整理

    原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...

  10. python基础常用语句-python爬虫之python一条语句分析几个常用函数和概念

    https://www.xin3721.com/eschool/pythonxin3721/ 前言 过年也没完全闲着,每天用一点点时间学点东西,本文为大家介绍几个python操作的细节,包含all.a ...

最新文章

  1. ubuntu 目录结构
  2. python 提示错误AttributeError: type object 'str' has no attribute '_name_'
  3. 修改Docker默认存储位置的方法
  4. bp matlab 训练参数,基于MATLABBP神经网络设计与训练.PDF
  5. 高压缩比 压缩软件 linux,Linux 下最为人熟知的归档/压缩工具
  6. soap协议_启扬课堂:扒一扒IOT的协议,很多你可能不知道
  7. python从入门到实践课后题_Python 从入门到实践 函数篇 8-6-8习题
  8. 使用tortoiseGit对GitHub添加公钥
  9. 小程序-涂鸦画笔(案例-集福)
  10. 区块链产品经理规范与总结
  11. canvas实现简单画板
  12. MediaRecorder录制音频文件
  13. 求最大公约数与最小公倍数算法——Java
  14. 在线头像制作网站FaceYourManga
  15. 低配置享受3D立体游戏 手把手教你设置
  16. 盘点2017企业服务领域最受关注的100家厂商(BPM平台篇)
  17. css切割图片是什么,两种方法实现css切割图片,只取图片中一部分
  18. 基于医疗RFID手术用品智能柜管理应用方案
  19. 【房屋租赁网管理系统】
  20. 基于OAI-PMH的元数据搜索引擎的设计与实现

热门文章

  1. Apache Samza流处理框架介绍——kafka+LevelDB的Key/Value数据库来存储历史消息+?
  2. python3 读取csv
  3. CSS三栏布局的四种方法
  4. 【咸鱼教程】震屏效果
  5. ios中常用数据类型相互转换
  6. poj 1815 Friendship 最小割 拆点 输出字典序
  7. Scalaz(23)- 泛函数据结构: Zipper-游标定位
  8. Jquery的跨域传输数据(JSONP)
  9. sql server 2005 T-SQL @@LANGUAGE (Transact-SQL)
  10. WPF指南之一(WPF的结构)