在程序运行的过程中,所有的变量都是在内存中,比如,定义一个dict:d=dict(name='Bob',age=20,score=88)可以随时修改变量,比如把name改成'Bill',但是一旦程序结束,变量所占用的内存就被操作系统全部回收。如果没有把修改后的'Bill'存储到磁盘上,下次重新运行程序,变量又被初始化为'Bob'。我们把变量从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语言中也被称之为serializ
系统 2019-09-27 17:50:29 2389
base64数据加密,是一种可逆的编码格式,生成的编码是ascii格式的数据,通过encode加密,decode解密。原理:1、将所有字符转化为ASCII码。2、将ASCII码转化为8位二进制。3、将二进制3个归成一组(不足3个在后边补0)共24位,再拆分成4组,每组6位。4、统一在6位二进制前补两个0凑足8位。5、将补0后的二进制转为十进制。6、从Base64编码表获取十进制对应的Base64编码。importbase64classEncodeDecod
系统 2019-09-27 17:50:29 2389
学习python以来的第一爬虫,参考《Python3网络爬虫开发实践》爬取目标为:猫眼电影Top100榜完全是依葫芦画瓢,首先请求网页内容,然后在通过正则表达式提取自己感兴趣的数据,最后转成json格式存入文本文件。importjsonimporttimeimportrequestsimportredefget_one_page(url):headers={'User-agent':'Mozilla/5.0(Macintosh;IntelMacOSX10_
系统 2019-09-27 17:50:24 2389
在利用numpy时,经常会用到随机数。这里将几种常用的容易混淆的用法进行总结。分别是:np.random.randint(low,high,size,dtype)numpy.random.rand(d0,d1,…,dn)np.random.randnrandom_sample(size)numpy.random.random([size])numpy.random.ranf([size])numpy.random.sample([size])具体使用直接上
系统 2019-09-27 17:50:23 2389
最近开始学Python,想直接通过命令行的方式进行学习。奈何没有Tab补全,操作实在麻烦,网上各种百度后无果(x64系统,x86的可以直接下载网上各种编译好的包)最后自己百度+加上自己的摸索,找到了在64位系统下轻松安装readline和tab补全的方法一、安装readlinecmd命令行,就会自动安装readline模块python-mpipinstallpyreadline二、编写tab.py文件保存在..\Python\Lib\tab.py例如:D:
系统 2019-09-27 17:47:11 2389
上一期博客,我本来想爬取美团美食的,但是由于请求头太复杂,没有破解开其中的几个参数,所以放弃,这次我们来用selenium来模式浏览器抓取数据,我们先来简单看一下流程:1,利用selenium驱动浏览器,得到美食列表2,分析网页,并给予翻页后续的美食列表3,分析提取数据(pyQuery)项目一:美团美食项目地址:https://gitee.com/dwyui/pyQuery_selenium.git由于美团反扒严重,只爬取到部分数据,可以尝试修改间隔时间来
系统 2019-09-27 17:45:51 2389
作者|JeffHale译者|风车云马;责编|Jane,Rachel出品|Python大本营(ID:pythonnews)【导读】在编写一些Python程序的时候,我们常常需要与文件系统进行交互。在本文中,营长为大家整理了10个常用的相关命令,涉及查看信息、更改信息、删除文件等,并提供了相应的终端命令,帮助大家更高效地对文件系统及其中的文件内容进行操作。通过一个能够实现与文件系统进行交互的Python程序,我们可以实现很多有趣的应用,但是大部分人并不知道如何
系统 2019-09-27 17:45:44 2389
mysql命令大全(转)SQL数据结构MySQLSQLServer正则表达式启动:netstartmySql;进入:mysql-uroot-p/mysql-hlocalhost-uroot-pdatabaseName;列出数据库:showdatabases;选择数据库:usedatabaseName;列出表格:showtables;显示表格列的属性:showcolumnsfromtableName;建立数据库:sourcefileName.txt;匹配字符
系统 2019-08-29 23:53:14 2389
Hibernate与延迟加载:Hibernate对象关系映射提供延迟的与非延迟的对象初始化。非延迟加载在读取一个对象的时候会将与这个对象所有相关的其他对象一起读取出来。这有时会导致成百的(如果不是成千的话)select语句在读取对象的时候执行。这个问题有时出现在使用双向关系的时候,经常会导致整个数据库都在初始化的阶段被读出来了。当然,你可以不厌其烦地检查每一个对象与其他对象的关系,并把那些最昂贵的删除,但是到最后,我们可能会因此失去了本想在ORM工具中获得
系统 2019-08-29 23:43:28 2389
为了对后续关于Mina的ProtocolFilter(编解码器)的编写有一个更好的理解,本文讲述一下关于MinaByteBuffer和JavaNioByteBuffer的区别。关于JavaNioByteBuffer和MinaByteBuffer及其子类的类图在附件中都已经给出了。因为Mina的ByteBuffer在Mina2.0以上的版本中都改称IoBuffer。为了使后文关于ByteBuffer的名字不致混淆,MinaByteBuffer都统称IoBuf
系统 2019-08-29 23:01:51 2389