time模块

random模块

sys模块

os模块

序列化模块

 time模块

有三种方式表示

在Python中,通常有三种方式来表示时间:时间戳、元组(struct_time)、格式化的时间字符串:

(1)时间戳  通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。

(2)格式化时间字符串:

(3)元组 struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)

小结:时间戳是计算机用来计算的;格式化字符串是方便人们看的;元组是用来操作时间的。

# import time
# d=time.time()#时间戳
# print(d)
# print(time.localtime(d))#本地时间以元组的形式
# print(time.gmtime(d))#伦敦时间以元组的形式
# c=time.localtime(d)#以元组的形式来展示本地时间
# h=time.mktime(c)#将元组的形式变成时间戳的形式
# print(h)#打印出来
# h1=time.strftime('%Y-%m-%d %X',c)#将元组的形式变成格式化
# print(h1)
# h3=time.strptime(h1,'%Y-%m-%d %X')#将格式化变成元组
# print(h3)

import time
# ss=time.localtime()#元组
# d=time.asctime(ss)
# print(d)
# ss=time.time()#时间戳
# d=time.ctime(ss)
# print(d)

 random模块

import random
#随机小数
# s=random.random()#生成0-1之间的随机数
# print(s)
# s1=random.uniform(1,3)#生成1-3之间的随机数
# print(s1)
# #随机整数
# s=random.randint(1,5)#包括首尾之间的随机整数
# print(s)
# s=random.randrange(1,10,2)#大于等于1且小于10之间的整数
# print(s) # s=random.choice(['1','hehe','dddd'])#随机选择一个返回
# print(s)
# s=random.sample(['dddd','hssihso','jjdjdjjd',['ddd','rrr']],2)#返回2个
# print(s)
# item=[1,3,4,5,6]
# random.shuffle(item)#d打乱顺序
# print(item)

生成随机验证码:(两种方法)

num_list=list(range(10))
new_num_l=list(map(str,num_list))
alph_l=[]
for i in range (65,91):
alph=chr(i)
alph_l.append(alph) new_num_l.extend(alph_l)
ret_l=[]
for i in range(4):
ret_l.append(random.choice(new_num_l))
print(''.join(ret_l)) import random
def v_code():
code = ''
for i in range(5):
num=random.randint(0,9)
alf=chr(random.randint(65,90))
add=random.choice([num,alf])
code="".join([code,str(add)])
return code print(v_code())

 sys模块

sys模块是与python解释器交互的一个接口。

sys.argv           命令行参数List,第一个元素是程序本身路径
sys.exit(n) 退出程序,正常退出时exit(0)
sys.version 获取Python解释程序的版本信息
sys.maxint 最大的Int值
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform 返回操作系统平台名称
import sys
print(sys.argv)#返回所在的路径
print(sys.version)#返回python的版本
print(sys.maxsize)#返回最大的int值
print(sys.path)#返回模块的搜索路径,即环境变量
print(sys.platform)#返回操作系统的平台名字

os模块

os模块是与操作系统交互的一个接口

os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.popen("bash command) 运行shell命令,获取执行结果
os.environ 获取系统环境变量
os.pathos.path.abspath(path) 返回path规范化的绝对路径 os.path.split(path) 将path分割成目录和文件名二元组返回 os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素 os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。
即os.path.split(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.path.getatime(path) 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) 返回path的大小

序列化模块

什么叫序列化——将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化

序列化的目的

1、以某种存储形式使自定义对象持久化
2、将对象从一个地方传递到另一个地方。
3、使程序更具维护性。

Json模块提供了四个功能:dumps、dump、loads、load

# import json
# dic1={'k1':'v1','k2':'v2','k3':'v3'}
# print(type(dic1))#打印出字典的类型
# str_dic=json.dumps(dic1)#序列化:将一个字典转换成字符串
# print(str_dic,type(str_dic))
# dic_dic=json.loads(str_dic)#反序列化:将一个字符串转换成字典
# print(dic_dic,type(dic_dic))
# import json
# f=open('filename','w')
# dic1={'k1':'v1','k2':'v2','k3':'v3'}
# json.dump(dic1,f)#获得句柄,讲字典以字符串的形式写入
# f.close()
# f=open('filename')
# dic2=json.load(f)#直接将json的字符串形式变成数据结构返回
# f.close()
# print(type(dic2),dic2)
 

pickle模块

  • json,用于字符串 和 python数据类型间进行转换
  • pickle,用于python特有的类型 和 python的数据类型间进行转换
  • pickle模块提供了四个功能:dumps、dump(序列化,存)、loads(反序列化,读)、load  (不仅可以序列化字典,列表...可以把python中任意的数据类型序列化

# import pickle
# k={'k1':'v1','k2':'v2','k3':'v3'}
# d=pickle.dumps(k)#转成二进制的数据
# print(pickle.loads(d))#返回原来的数据结构

这里我们要说明一下,json是一种所有的语言都可以识别的数据结构。
如果我们将一个字典或者序列化成了一个json存在文件里,那么java代码或者js代码也可以拿来用。
但是如果我们用pickle进行序列化,其他语言就不能读懂这是什么了~如果是用python来读写就用pickle模块

shelve 模块

# import shelve
# f=shelve.open('shelve_file')
# f['key']={'k1':'v1','int':10}
# f.close()
# d=f['key']
# f.close()
# print(d)
# import shelve
# f=shelve.open('shelve_file',flag='r')
# print(f['key'])
# f.close()
# f['key']['new values']='this is not before '
# f.close()

但是这个读写是在缓存中的不是在文件的,需要更改默认值

# f2=shelve.open('shelve_file',writeback=True)
# print(f2['key'])
# f2['key']['new values']='this is not before'
# f2.close()

python之常用模块(续)的更多相关文章

  1. python的常用模块之collections模块

    python的常用模块之collections模块 python全栈开发,模块,collections 认识模块 什么是模块?    常见的场景:一个模块就是一个包含了python定义和声明的文件,文 ...

  2. python之常用模块

    python 常用模块 之 (subprocess模块.logging模块.re模块) python 常用模块 之 (序列化模块.XML模块.configparse模块.hashlib模块) pyth ...

  3. python之常用模块二(hashlib logging configparser)

    摘要:hashlib ***** logging ***** configparser * 一.hashlib模块 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 摘要算法 ...

  4. Python学习——python的常用模块

    模块:用一堆代码实现了某个功能的代码集合,模块是不带 .py 扩展的另外一个 Python 文件的文件名. 一.time & datetime模块 import time import dat ...

  5. python 之常用模块

    一 认识模块 二 常用模块    (1)re模块    (2)collections模块 一  认识模块     (1)什么是模块      (2)模块的导入和使用 (1)模块是:一个模块就是一个包含 ...

  6. Python之常用模块--collections模块

    认识模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的 ...

  7. Python自动化开发之python的常用模块

    python常用模块 模块的种类:模块分为三种,分别是自定义模块:内置标准模块(即标准库):开源模块(第三方). 以下主要研究标准模块即标准库:标准库直接导入即可,不需要安装. 时间模块:time , ...

  8. python基础----常用模块

    一 time模块(时间模块)★★★★                                                      时间表现形式 在Python中,通常有这三种方式来表示时 ...

  9. python(五)常用模块学习

    版权声明:本文为原创文章,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明. https://blog.csdn.net/fgf00/article/details/52357 ...

  10. python学习——常用模块

    在学习常用模块时我们应该知道模块和包是什么,关于模块和包会单独写一篇随笔,下面先来了解有关在python中的几个常用模块. 一.什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文 ...

随机推荐

  1. JQuery官方学习资料(译):遍历

        一旦你通过JQuery创建了选择器,你就可以对此进行更为深入的遍历.遍历可以分为三个基本组成部分,父节点.子节点和兄弟节点.JQuery为这些部分提供了许多丰富易用的方法. <div c ...

  2. php截取中文字符串无乱码的方法

    利用php内置方法mb_substr截取中文不乱码,使用起来非常简单 <?php $str = '我喜欢laravel or yii2'; echo mb_substr($str, 0, 1, ...

  3. mybatis_02简单操作数据库

    模糊查询用户信息 <!-- [${}]:表示拼接SQL字符串 [${value}]:表示要拼接的是简单类型参数. 注意: 1.如果参数为简单类型时,${}里面的参数名称必须为value 2.${ ...

  4. HbuilderX 常用快捷键

    最新2019.3.30版本已经添加idea的快捷键,就不需要再额外记住HbuilderX的快捷键啦~ 链接 输入a,按下tab 加粗 ctrl+B 换行 需要换行的那一行后面加2个空格(或者按下tab ...

  5. python基础学习(九)字典

    字典的定义 dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型(有点类似java中的Map) 字典同样可以用来 存储多个数据 通常用于存储 描述一个 物体 的相关信息 ...

  6. js 原生手写AJAX

    前言:最近在学习react,在练习中模拟一个button通过AJAX向后台发送POST请求,懒得引入AXIOS,就顺便练习了js原生ajax. 正文: 注:我忽略了IE6及以下版本 submit(){ ...

  7. js/es6 元素拖动

    元素事件:鼠标按下事件/鼠标移动事件/鼠标松开事件 元素样式:让元素脱离文档流,采用绝对定位的方式. 一.鼠标按下事件 当鼠标在元素上面按下时,保存元素的初始偏移量和鼠标按下时的坐标,然后在状态变量里 ...

  8. React 入门学习笔记整理目录

    React 入门学习笔记整理(一)--搭建环境 React 入门学习笔记整理(二)-- JSX简介与语法 React 入门学习笔记整理(三)-- 组件 React 入门学习笔记整理(四)-- 事件 R ...

  9. js导出Excel表格

    js导出Excel表格 直接上代码: 红色部分:如果表格数据中有“1/1”这样的值,会在导出的Excel中转化为日期“1月1日”,所以才加上了红色那两句.如果返回值中没有这样的格式,红色部分可以不写. ...

  10. Android内存优化(三)详解内存分析工具MAT

    前言 在这个系列的前四篇文章中,我分别介绍了DVM.ART.内存泄漏和内存检测工具的相关知识点,这一篇我们通过一个小例子,来学习如何使用内存分析工具MAT. 1.概述 在进行内存分析时,我们可以使用M ...