Python 标准库 marshal 也可以进行对象的序列化和反序列化,下面的代码进行了简单演示. import marshal x1 = 30 x2 = 5.0 x3 = [1,2,3] x4 = (4,5,6) x5 = {'a':1,'b':2,'c':3} x6 = {7,8,9} x = [eval('x'+str(i)) for i in range(1,7)] #把要序列化的对象放到一个列表中 print(x) #[30, 5.0, [1, 2, 3], (4, 5, 6), {'…
''' 使用struct模块写入二进制文件 ''' import struct n=130000000 x=96.45 b=True s='a1@中国' sn=struct.pack('if?',n,x,b) #序列化,i表示整数,f表示实数,?表示逻辑值 f=open('sample_struct.dat','wb') f.write(sn) f.write(s.encode()) #字符串需要编码为字节串再写入文件 f.close() ''' 使用struct模块读取二进制文件的内容 '''…
import marshal #导入模块 x1=30 #待序列化的对象 x2=5.0 x3=[1,2,3] x4=(4,5,6) x5={'a':1,'b':2,'c':3} x6={7,8,9} x=[eval('x'+str(i)) for i in range(1,7)] #把需要序列化的对象放在一个列表中 print(x) # [30, 5.0, [1, 2, 3], (4, 5, 6), {'c': 3, 'b': 2, 'a': 1}, {8, 9, 7}] with open('t…
import shelve #导入shelve模块 fp=shelve.open('shelve_test.dat') #创建或打开二进制文件 zhangsan={'age':38,'sex':'Male','adress':'SDIBT'} fp['zhangsan']=zhangsan #写入文件内容 lisi={'} fp['lisi']=lisi #写入文件内容 fp.close() #关闭文件 fp=shelve.open('shelve_test.dat') print(fp['zh…
import pickle b=7 i=13000000 fa=99.056 s='中国人民 123abc' lst=[[1,2,3],[4,5,6],[7,8,9]] tu=(-5,10,8) coll={4,5,6} dic={'a':'apple','b':'banana','g':'grape','o':'orange'} f=open('sample_pickle.dat','wb') #以写模式打开二进制文件 try: pickle.dump(b,f) #对象个数 pickle.du…
Python标准库shelve也提供了二进制文件操作的功能,可以像字典赋值一样来写入二进制文件,也可以像字典一样读取二进制文件,有点类似于NoSQL数据库MongoDB. import shelve fp = shelve.open('shelve_test.dat') #创建或打开二进制文件 zhangsan = {'age':38,'sex':'Male','address':'SDIBT'} fp['zhangsan'] = zhangsan #往文件里写入内容 lisi = {'} fp…
2924: 文件操作--二进制文件读入 时间限制: 1 Sec  内存限制: 128 MB 提交: 58  解决: 20 题目描述 现有100名学生的姓名(name).学号(num).英语(English).数学(Math).语文(Chinese)成绩存储在一个二进制文件student.dic中(姓名用char[20],学号和各科成绩用int存储),现要求将指定行数的学生信息输出,每条信息占一行. 前5行学生信息为: akdh 13773 84 83 66 fjka 30257 15 14 88…
第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS PhantomJS虚拟浏览器 phantomjs 是一个基于js的webkit内核无头浏览器 也就是没有显示界面的浏览器,利用这个软件,可以获取到网址js加载的任何信息,也就是可以获取浏览器异步加载的信息 下载网址:http://phantomjs.org/download.html  下载对应系统版本 下载后解压PhantomJS文件,将解压文件夹,剪切到python安装文件夹 然后将P…
MySQL数据库-ORM之sqlalchemy模块操作数据库 sqlalchemy第三方模块 sqlalchemysqlalchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果. SQLAlchemy本身无法操作数据库,其必须以pymsql等第三方插件,Dialect用于和数据API进行交流,根据配置文件的不同调用不同的数据库API,从而实现对数据库的操作, 如…
MySQL数据库-pymysql模块操作数据库 pymysql模块是python操作数据库的一个模块 connect()创建数据库链接,参数是连接数据库需要的连接参数使用方式: 模块名称.connect() 参数: host=数据库ip port=数据库端口 user=数据库用户名 passwd=数据库密码 db=数据库名称 charset=数据库编码 cursor()创建数据库操作游标,无参使用方式: 游标变量.cursor() execute()操作数据库,参数1 sql语句,参数2 字符串…