#登录认证#加密-->解密#摘要算法#两个字符串:#importhashlib#提供摘要算法的模块md5=hashlib.md5()md5.update(b'123456')print(md5.hexdigest())#aee949757a2e698417463d47acac93df#不管算法多么不同,摘要的功能始终不变#对于相同的字符串使用同一个算法进行摘要,得到的值总是不变的#使用不同算法对相同的字符串进行摘要,得到的值应该不同#不管使用什么算法,ha
系统 2019-09-27 17:49:08 2232
先说说线程在多线程中,为了保证共享资源的正确性,我们常常会用到线程同步技术.将一些敏感操作变成原子操作,保证同一时刻多个线程中只有一个线程在执行这个原子操作。我最常用的是互斥锁,也称独占锁。其次还有读写锁,信号量,条件变量等。除此之外,我们在进程间通信时会用到信号,向某一个进程发送信号,该进程中设置信号处理函数,然后当该进程收到信号时,执行某些操作。其实在线程中,也可以接受信号,利用这种机制,我们也可以用来实现线程同步。更多信息见//www.jb51.ne
系统 2019-09-27 17:48:40 2232
5.1字典数据类型字典的索引可以使用许多不同类型的数据,不只是整数。字典的索引被称为“键”,键及其关联的值称为“键—值”对,在代码中,字典输入时带花括号{}。字典中的表项是不排序的,所以字典不能像列表那样切片。5.1.1keys()、values()和items()方法key()、values()和items()方法将返回类似于列表的值,分别对应于字典的键、值和键-值对。这些方法返回的值不是真正的列表,他们不能被修改,没有append()方法。但这些数据类
系统 2019-09-27 17:48:20 2232
因为GAE在国内访问不便,所以平时有一些小应用,我都会放在SAE上面,虽然SAE还有很多缺陷,但算是上手比较容易的一个了,最起码文档写的不错。开发SAE上的应用,我一般都用Flask,SAE预装了Flask,所以你可以直接用,但我们难免会用一些没有预装的库。如果是在以前,可能需要自己将package挨个copy到应用目录中,然后手动加载,现在嘛,不需要那么麻烦了,SAE有个非常不错的解决方案,见《安装依赖的第三方包》你可以使用saecloud来代替pip安
系统 2019-09-27 17:48:13 2232
简介字符串序列用于表示和存储文本,python中字符串是不可变的,一旦声明,不能改变通常由单引号('),双引号("),三引号('''""")包围其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。便捷的多行注释Python实际三类字符串:1.通常意义字符串(str)2.原始字符串,以大写R或小写r开始,r'',不对特殊字符进行转义3.Unicode字符串,u''basestring子类在Python中,字符串是
系统 2019-09-27 17:48:00 2232
代码一:#!/usr/bin/python#-*-coding:utf-8-*-#encoding=utf-8importthreadingimportQueueimportsysimporturllib2importreimportMySQLdb##数据库变量设置#DB_HOST='127.0.0.1'DB_USER="XXXX"DB_PASSWD="XXXXXXXX"DB_NAME="xxxx"##变量设置#THREAD_LIMIT=3jobs=Que
系统 2019-09-27 17:47:49 2232
0x00marshalmarshal使用的是与Python语言相关但与机器无关的二进制来读写Python对象的。这种二进制的格式也跟Python语言的版本相关,marshal序列化的格式对不同的版本的Python是不兼容的。marshal一般用于Python内部对象的序列化。一般地包括:基本类型booleans,integers,floatingpointnumbers,complexnumbers序列集合类型strings,bytes,bytearray
系统 2019-09-27 17:47:22 2232
python异常处理机制和java类似,采用try-except-finally的结构.try-except检测异常格式复制代码代码如下:try:try_statementexcept(ErrorType1,ErrorType2),e:handle_statementfinally:finally_statement实例复制代码代码如下:#!/usr/bin/pythontry:a=12b=0c=a/bexceptException,e:print"Exc
系统 2019-09-27 17:38:36 2232
我的操作系统为centos6.51首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包。yuminstallmysqlmysql-devel#为了测试方便,我们需要安装sqlite-devel包yuminstallsqlite-devel2接下来需要安装Python了,因为Python3已经成为主流,所以接下来我们要安装Python3,到官网去下载P
系统 2019-09-27 17:37:45 2232
<--!版权所有foruok,转载注明出处!-->一个完整的例子试验了一个完整的例子。在C++中生成一个类,注册到lua。从lua调用C++类的成员函数。在Alternate.lua中写了阶乘函数factorial。从C++中调用factorial。Alternate.lua如下:print("nowinalternate.lua");print("initialnumberofAxhSystem:"..AxhSystem:GetNumber());Axh
系统 2019-08-29 23:30:54 2232
从写下决定开发自己的组件(http://roading.net/blog/article.asp?id=47)已经快一个月了,一直有很多琐碎的事情,到目前还没有写完计划写的组件,怕自己写不下去,到这里说几句,算是对自己的监督.---------------------------------------------------------------------------------------------------------------------
系统 2019-08-29 23:19:10 2232
今天有同事问我关于Observer模式的一个问题,说观察者(Observer)为什么要依赖于主题(Subject),如下图所示:从上图可以看出,具体的观察者对具体的主题有一个依赖,而且从JDK本身提供的Observer接口,我们也可以看到,确实对主题(在JDK的实现中,为Observable接口)有一个依赖,如代码所示:publicinterfaceObserver{voidupdate(Observableo,Objectarg);}这个是为什么呢,为什
系统 2019-08-29 23:06:54 2232
ifobject_id('T')isnotnulldroptableTgocreatetableT(idvarchar(10)primarykey,namevarchar(10))go--用触发器完成createtriggertr_T_insertonTinsteadofinsertasbegindeclare@iintselect*into#frominsertedselect@i=isnull(max(id),1000000)fromTupdate#s
系统 2019-08-29 22:52:34 2232
如果我们想在3列布局的最后加一行页脚,放版权之类的信息。就遇到必须对齐3列底部的问题。在table布局中,我们用大表格嵌套小表格的方法,可以很方便对齐三列;而用div布局,三列独立分散,内容高低不同,就很难对齐。其实我们完全可以嵌套div,把三列放进一个DIV中,就做到了底部对齐。下面是实现例子(白色背景框模拟一个页面):程序代码#body,div{FONT-SIZE:12px;}#pag
系统 2019-08-29 22:51:57 2232
以下为log4j中的配置参数:%m输出代码中指定的消息%p输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL%r输出自应用启动到输出该log信息耗费的毫秒数%t输出产生该日志事件的线程名;%n输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"%d输出日志时间的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyMMMddHH:mm:ss,SSS},输出类似:2008年10月18日22:1
系统 2019-08-29 22:51:08 2232