python内置模块(二)

-------------------接《python内置模块(一)》--------------------------------

四、json、pickle 数据序列化

用于序列化的两个模块

    • json,用于字符串 和 python数据类型间进行转换
    • pickle,用于python特有的类型 和 python的数据类型间进行转换

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

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

 # pickle.dumps 通过特殊的形式将数据转换成只有python能认识的字符串

>>> import pickle

>>> data = {‘lihongye1‘:‘pwd1‘,‘lihongye2‘:‘pwd2‘}

>>> p_str = pickle.dumps(data)

>>> print(p_str)

或将字符串转换成只有python能认识的字符串存储在文件中

test = { ‘user‘:‘lihongye‘,‘pwd‘:‘pwd1‘,‘num‘:‘123‘}

import pickle

fw = open(‘test_file‘,‘wb‘)

fw.write(pickle.dumps(test))

通过pickle.loads 将字符串转成原数据形式

import pickle

fr = open(‘test_file‘,‘rb‘)

frp = pickle.load(fr)

print(frp)

# 也可通过json.dumps方式将数据转成所有程序都能认识的字符串格式并写入文件

test = { ‘user‘:‘lihongye‘,‘pwd‘:‘pwd1‘,‘num‘:‘123‘}

import json

fw = open(‘test_file‘,‘w‘)

fw.write(json.dumps(test))

通过json.loads方式将字符串转换成原数据格式

import json

fr = open(‘test_file‘,‘r‘)

frp = json.load(fr)

print(frp)

五、 random

     随机数

     >>> import random

>>> random.random()           # 随机小数

0.7558096251338481

>>> random.randint(1,3)       # 有范围的随机数1-3

2

>>> random.randrange(1,10)    # 有范围的随机数1-9

1

     随机验证码实例
        import  random

check_code = ‘‘

for i in range(4):

current = random.randint(0,4)

if current != i:

tmp = str(chr(random.randint(65,90)))

else:

tmp = random.randint(0,9)

check_code += str(current)

print(check_code)


----------------------------------更新中 ------------------------------------

时间: 2024-08-02 10:56:50

python内置模块(二)的相关文章

python 学习二十五天(python内置模块之序列化模块)

今日主要内容 1.python内置模块-序列化模块 python中的序列化模块 json 所有的编程语言都通用的序列化格式....它支持的数据类型非常有限 数字 字符串 列表 字典 pickle 只能在python语言的程序之间传递数据用的..pickle支持python中所有的数据类型 shelve python3.* 之后才有的 2.摘要模块---hashlib 3.一道经典面试题 第一.python内置模块---序列化 ***所有的导入模块都需要把import放在文件首位 什么叫序列化 能

python内置模块(4)

这一部分是python内置模块系列的最后一部分,介绍了一些小巧有用的内置模块. 目录: 1.random 2.shelve 3. getpass 4.zipfile 5.tarfile 6.bisect 7.fileinput 一.random random模块是python提供的生成伪随机数模块,使用很简单,如下的三个方法都是生成1个随机数: import random print(random.random()) print(random.randint(1, 2)) print(rando

python内置模块

python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返回类型为列表,第一个元素为程序的本身的路径 sys.path 返回模块的搜索路径列表,第一个元素为当前程序所在目录:初始化时使用PYTHONPATH环境变量的值 sys.modules.keys() 返回所有已经导入的模块列表 sys.modules 返回所有已经导入的模块字典,key模块名,val

python内置模块(四)

----------------------------接 python内置模块(三)--------------------------- 十一.hashlib模块  用于加密相关的操作,3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 import hashlib m = hashlib.md5() m.update(b"Hello") m.update(b"It's me"

Python内置模块之time、datetime

python内置模块系列(一):time模块与datetime time模块是python内置查看当前时间戳的一个模块 一 time 1 获得时间戳 时间戳:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行''type(time.time())'',返回的是float类型. import time print(time.time()) # 运行结果 1539678307.779871 2 结构化时间字符串 import time print(time.l

[Python 学习] 二、在Linux平台上使用Python

这一节,主要介绍在Linux平台上如何使用Python 1. Python安装. 现在大部分的发行版本都是自带Python的,所以可以不用安装.如果要安装的话,可以使用对应的系统安装指令. Fedora系统:先以root登入,运行 yum install python Ubuntu系统:在root组的用户, 运行 sudo apt-get install python 2. 使用的Python的脚本 Linux是一个以文件为单位的系统,那么我们使用的Python是哪一个文件呢? 这个可以通过指令

OpenCV for Python 学习 (二 事件与回调函数)

今天主要看了OpenCV中的事件以及回调函数,这么说可能不准确,主要是下面这两个函数(OpenCV中还有很多这些函数,可以在 http://docs.opencv.org/trunk/modules/highgui/doc/user_interface.html 找到,就不一一列举了),然后自己做了一个简单的绘图程序 函数如下: cv2.setMouseCallback(windowName, onMouse[, param]) cv2.createTrackbar(trackbarName,

【美妙的Python之二】Python初步

美妙的Python之Python起步 简而言之: Python 是能你无限惊喜的语言,与众不同.           1.动态类型:         Python是一种动态类型语言,不需要预先声明变量的类型,变量的类型和值在赋值那一刻动态地初始化.这一点与C/C++,Java等静态类型语言完全不同,静态类型在编译阶段就必须显示的声明变量的类型,动态类似在运行时才确定变量的类型.        变量a动态地初始化为int类型,并赋值2014;        变量msg则动态初始化为str类型,并赋

Python的二维数组

Python一维数组初始化: >>> list=[] >>> type(list) <type 'list'> >>> list [] Python二维数组初始化: >>> lists = [[]] * 3 >>> lists [[], [], []] >>> lists[0].append(3) >>> lists [[3], [3], [3]] "[[]]