os   模块 os.path.abspath  规范绝对路径 os.path.split() 把路径分成两段,第二段是一个文件或者是文件夹 os.path.dirname    取第一部分 os.path.basename 取第二部分 os.path.exists()   判断文件或者文件夹是否存在  True  Flase os.path.isabs() 判断是否是绝对路径,是的话返回True os.path.isfile() 判断是否是一个文件,是返回True os.path.isdir(…
Pythoy 数据类型序列化--json&pickle 模块 TOC 什么是序列化/反序列化 pickle 模块 json 模块 对比json和pickle json.tool 命令行接口 什么是序列化/反序列化? 就是将内存中的数据类型变成可存储或传输的东西,这一过程叫做序列化,在python中叫pickling,在其它语言叫 serialization,marshalling,flattening等,其实base64转码也可叫做序列化,因为很多文本协议如http,smtp都是只支持ascii…
前提:dir,__all__,help,__doc__,__file__ dir:可以用来查看模块中的所有特性(函数,类,变量等) >>> import copy >>> dir(copy) ['Error', 'PyStringMap', '_EmptyClass', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package_…
本节内容 前言 json模块 pickle模块 shelve模块 总结 一.前言 1. 现实需求 每种编程语言都有各自的数据类型,其中面向对象的编程语言还允许开发者自定义数据类型(如:自定义类),Python也是一样.很多时候我们会有这样的需求: 把内存中的各种数据类型的数据通过网络传送给其它机器或客户端: 把内存中的各种数据类型的数据保存到本地磁盘持久化: 2.数据格式 如果要将一个系统内的数据通过网络传输给其它系统或客户端,我们通常都需要先把这些数据转化为字符串或字节串,而且需要规定一种统一…
序列化 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. json 模块 json.dump(d,f) json.load(f) #与文件得交互 dump(可多次,但不那样做) load(只可一次) 把数据类型转成字符串存到内存里得意义? json.dumps(data) json.loads(q) #与内存得交互 1.把内存数据 通过网络 共享给远程其他人 必须:bytes 2.定义了不同语言之间得交互规则 2.1 纯文…
Python基础至os模块 由于近期的项目需要用到对应的终端命令去调用其他程序,因此温习一下os.system()函数: 参考文献:https://zhuanlan.zhihu.com/p/51716674 参考文献:https://www.cnblogs.com/MrRead/p/7832786.html 1.os.system() 错误用法 os.system(""),该方法不具备连续性,属于子进程,因此每次使用都是重新开是 # -*- coding: utf-8 -*- '''…
5.8 shtil 高级的 文件.文件夹.压缩包 处理模块 shutil.rmtree 删除目录 import shutilshutil.rmtree(path) shutil.move 重命名:移动文件 import shutilshutil.move('test','ttt') shutil.make_archive 压缩文件夹 import  shutil​shutil.make_archive('cade\asd','zip',r'E:\Python_WorkSpace\day016 模…
python基础 文件读写 凡是读写文件,所有格式类型都是字符串形式传输 只读模式(默认) r  f=open('a.txt','r')#文件不存在会报错 print(f.read())#获取到文件所有内容 f.close()#关闭文件 读写模式 r+ f=open('a.txt','r+')#文件不存在会报错,可读可写可追加 f.write(')# f.close() 只写模式 w f=open('a.txt','w')#w会一打开文件未被清空,如果文件不存在会新建 f.write(') f.…
序列化: 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 反序列化: 把字符转成内存里的数据类型. 用于序列化的两个模块.他们的使用方法完全一样. json,用于字符串 和 python数据类型间进行转换 pickle,用于python特有的类型 和 python的数据类型间进行转换 Json模块提供了四个功能:dumps.dump.loads.load pickle模块提供了四个功能:dumps.dump.loads.…
我们把对象(变量)从内存中变成可存储的过程称之为序列化,比如XML,在Python中叫pickling,在其他语言中也被称之为serialization,marshalling,flattening等等,都是一个意思. 序列化后,就可以把序列化后的内容写入磁盘,或者通过网络传输到其他服务器上, 反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling json(JavaScript Object Notation) 一种轻量级的数据交换格式.它基于ECMAScript…
  Python之路,Day13 = Python基础13 sys模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 sys.platform 返回操作系统平台名称 logging模块 默认情况下Python的logging模块将日志打印到…
序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes.反之,把硬盘里面的数据读到内存里,叫反序列化.…
序列化 参考:https://www.cnblogs.com/yuanchenqi/articles/5732581.html # dic = str({'1':'111'}) # # f = open('test', 'w') # f.write(dic) #必须是str类型,不是set file = open('test', 'r') data = file.read()#data是字符串 '])#用eval将字符串类型的data转成dict类型 print(type(data)) prin…
一 什么是 序列化 在我们存储数据或者 网络传输数据的时候,需要对我们的 对象进行处理,把对象处理成方便我们存储和传输的 数据格式,这个过程叫序列化,不同的序列化,结果也不相同,但是目的是一样的,都是为了存储和传输 在 python中存在 三种序列化的 方案 1.pickle,可以将 我们 python 中的 任意数据类型转化成 bytes 并写入到文件中,同样也可以把文件中写好的 bytes 转换成我们 python的 数据,这个过程称为反序列化 pickle 是 python自身独有的 序列…
python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象. 基本接口: pickle.dump(obj, file, [,protocol]) 注解:将对象obj保存到文件file中去. protocol为序列化使用的协议版本,0:ASCII协议,所序列化的对象使用可打印的ASCII码表示:1:老式的二进制协议:2:2.3版本引…
os模块补充以及序列化模块   一.os模块的补充 1.os.path.abspath 能把存在的相对路径的绝对路径显示出来 path = os.path.abspath("连达day19.py") print(path) #F:\pythonworkspace\day19\连达day19.py 2.os.path.split 把一个路径分成两段(以元组的形式展示),第二段是该路径的最后一个文件或者文件夹 path = os.path.split("F:\pythonwork…
python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess logging re正则 转自老男孩老师Yuan:http://www.cnblogs.com/yuanchenqi/articles/5732581.html 模块&包(* * * * *) 模块(modue)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,…
一.eval模拟序列化操作 1.序列化 内存中的数据-------->转成一种中间格式(字符串)---------->存到文件中 dic={'name':'egon','age':18} with open('db','w',encoding='utf-8')as f: f.write(str(dic)) db文本内容: {'name': 'egon', 'age': 18} 2.反序列化 文件-------->读取中间格式(字符串)--------->eval转成内存中的数据结构…
本节目录: 1.模块的分类 2.模块的导入 3.time模块 4.datetime模块 5.random 6.os模块 7.sys模块 8.hashlib 9.json&pickle 一.模块的分类 Python流行的一个原因就是因为它的第三方模块数量巨大,我们编写代码不必从零开始重新造轮子,许多要用的功能都已经写好封装成库了,我们只要直接调用即可,模块分为内建模块.自定义的模块.安装的第三方的模块,一般都放在不同的地方,下面来看一下内建模块怎么导入,以及他们存放的位置. import sys…
json & pickle 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. 1 2 3 4 import json x="[null,true,false,1]" print(eval(x)) print(json.loads(x)) 什么是序列化? 我们…
在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # 操作系统类型 'nt' nt,是Windows:posix是Linux或者unix 1.对目录和文件的操作. >>> os.path#查看当前工作路径 <module 'ntpath' from 'C:\\Users\\Administrator\\AppData\\Local\\Pr…
序列化: 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化: 有种办法可以直接把内存数据(eg:10个列表,3个嵌套字典)存到硬盘上,下次程序再启动,再从硬盘上读回来,还是原来的格式. 1.把内存数据(eg:dict)转成字符串叫 序列化2.把字符串转成内存数据类型叫 反序列化 python模块能自动转换 json pickle 作用:内存得数据很容易存下来,也很容易读回来,因为写到硬盘上只认识str by…
Python内置的os模块可以通过调用操作系统提供的接口函数来对文件和目录进行操作 os模块的基本功能: >>> import os >>> os.name 'posix' 获取详细的系统信息 >>> os.uname() posix.uname_result(sysname='Darwin', nodename='MichaelMacPro.local', release='14.3.0', version='Darwin Kernel Versio…
1.os模块 2.序列化模块:(1)json模块 和 pickle模块 一.os模块 os.path.abspath: (1)把路径中不符合规范的/改成操作系统默认的格式 import os path = os.path.abspath('C:/Administrator/PycharmProjectsled3/模块/day 19/ 课堂回顾,作业.py') print(path) #结果: C:\Administrator\PycharmProjectsled3\模块\day 19\ 课堂回顾…
一.os模块os.system("bash command") 运行shell命令,直接显示 os.popen("bash command).read() 运行shell命令,获取执行结果 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.path os.path.abspath(path) 返回path规范化的绝对路径 os.path…
一.os模块 os模块是与操作系统交互的一个接口. import os # 和文件和文件夹的操作有关 os.makedirs('dirname1/dirname2') # 可生成多层递归目录 os.removedirs('dirname1') # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推 os.mkdir('dirname') # 生成单级目录:相当于shell中mkdir dirname os.rmdir('dirname') # 删除单级空目录,若目录不为空则无法…
目录 Collections 模块 1.nametuple 2.deque(双端队列) 3.双端队列(deque): 4.Odereddict(有序字典): 5.Defaultdict(默认字典,首字母要大写): 6.Counter(计数器,首字母要大写) time模块 (1)时间戳(Timestamp) (2)格式化时间 (3)结构化时间(struct_time) (4)三种时间之间的转换 (5)时间字符串的拼接 Datetime: random(随机模块) OS模块 (跟操作系统打交道的模块…
阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,在python中.一个.py文件就称为一个模块(Module) 使用模块的好处: 提高了代码的可维护性. 其次,编写代码不必从零开始.当一个模块编写完毕,就可以被其他地方引用.我们编写程序的时候也经常引用其他模块,包括…
1. json序列化模块 # ### json """ 所有编程语言都能够识别的数据格式叫做json,是字符串 json: 将数据类型序列化成字符串 pickle:将数据类型序列化成字节流 json能够转换的数据类型: int float bool str list tuple dict None """ import json # ### (1) json基本语法 """dumps 和 loads 是一对,用来序列…
os.path.basename(path)返回path最后的文件名,如何path以/或\结尾,那么就会返回空值,即os.path.split(path)的第一个元素 ret = os.path.basename('D:/sylar/s15/day19/4.os模块.py') print(ret) #返回path最后的文件名 结果为: 4.os模块.py os.path.split(path)把路径分成两段 import os s= os.path.split(r'C:\Users\Mi\Pyc…