- 博客(18)
- 收藏
- 关注
转载 django中的csrf与后台模块处理
在表单中使用post方法提交表单数据,需要使用csrf标签,这是Django提供的防止伪装提交请求的功能。get方法提交数据不用使用csrf用法:模板中: {% csrf_token %} 模块中:def query(request): if request.POST.has_key("productname"):
2017-06-05 21:58:20 627
原创 python生成器
defodd(): n=1 whileTrue: yieldn n+=2odd_num =odd()count= 0for oin odd_num: print(o) count+=1关键字:yield有yield的函数会变成生成器,好处是不像列表
2017-06-01 19:01:31 190
原创 python正则表达式
模块:reimport re方法主要有:p=re.compile(r"abc") 返回pattern对象p.match("str") 返回str中符合该pattern对象的字符串#p.search("str") 返回str中符合该pattern对象的字符串#p.findall("str") 返回list对象区别:match方法必须要求
2017-06-01 18:20:26 302
原创 python线程锁
threading模块中有线程锁的功能,避免对公共资源操作导致的不可预计的后果使用方法:lock=threading.RLock 或者 lock=threading.Lock()然后再线程中使用lock.acquire()方法加锁,用lock.release()解锁比如: def run(self): global count whil
2017-05-25 01:56:11 200
原创 python多线程
模块有两个:threading和threadthread模块实现多线程:a=0def funt(no,b): global a while True: a+=1 print 'thread no %d = %d' %(no,a)def test(): thread.start_new_thre
2017-05-25 01:44:27 191
转载 python多进程
os.fork()方法该方法会衍生出一个子进程,父进程和子进程都会执行接下来的代码,方法返回值根据进程不同,父进程返回>0的一个数值,子进程返回0。想获得操作系统层面上的进程id需要调用os.getpid()创建子进程后,父进程退出后子进程也会被回收,所以父进程一般需要调用os.wait()或os.waitpid()方法等待子进程结束os.wait()等待任意一个子进程结束
2017-05-24 18:26:19 248
转载 python模块sys与os还有内置函数
系统相关的信息模块: import syssys.argv 是一个 list,包含所有的命令行参数. sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象. sys.stdin.readline() 从标准输入读一行 sys.stdout.write("a") 屏幕输出a sys.exit(exit_code) 退出程
2017-05-18 02:42:11 371
转载 python变量笔记
Python中,变量不是强制类型,定义变量不需类型声明Python有五个标准的数据类型:Numbers(数字)String(字符串)List(列表)Tuple(元组)Dictionary(字典)数字又分为:int(有符号整型)long(长整型[也可以代表八进制和十六进制]) float(浮点型) complex(复数)字符串是可索引的:print
2017-05-13 18:37:45 146
原创 选择排序法的理解
void selectionsort(int a[],int n) { int i,j; int k; int tmp; for(i = 0; i < n-1; i++) //1 { k = i; for(j = i+1; j
2017-05-04 17:40:24 651
原创 冒泡排序法的理解
方便回忆:冒泡排序法是先排序好最大的那个数字在数组最后面,再排倒数第二大的数字。。。以此类推。void Bubble_Sort(int *num, int n){ int i, j; for(i = 0; i { for(j = 0; i + j { if(num[j] >
2017-05-04 16:56:45 2006
原创 cloudstack+kvm关于虚拟机的终极处理方法
cloudstack归根究底只不过是一个java开发的C/S模式API调用工具,用于协调虚拟机工作和创建虚拟网络那么如果cloudstack的management崩溃后将会导致很大的管理难点,除了可以通过高可用技术(keepalived,haproxy)保证管理节点可用之外,必要时刻还可以在计算节点上操作虚拟机:virsh 命令执行后会进入一个伪终端,可以通过help命令查看更多命令
2017-05-03 16:48:47 1472
原创 关于cloudstack中遇见的一些问题处理笔记
这是回忆用的,有点乱:加载系统虚拟机模板命令:/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondary -f /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver/a
2017-05-03 16:27:27 1251
原创 关于servlet中的session对象
session是存储在服务端的数据!通过session.getId()方法可以获取cookie标识JSESSIONID。session中的键值对存储和cookie中的是不同的,tomcat中默认session存活时间是30分钟。通过request.getSession方法获取一个HttpSession对象HttpSession对象方法:1 public Object
2017-05-03 15:53:12 627
原创 关于servlet中的cookie
cookie是存储在浏览器客户端的数据!不适合保存敏感数据!通过JSESSIONID这个cookie标识session。一个cookie对象就是一个键值对,Cookie可以自定义键值对。通过response.addCookie方法设置后,浏览器就会存储这个Cookie,下次发送请求会把这个设置的Cookie一起发过来服务端然后通过resquest.getCookies方法创建一个
2017-05-03 15:46:52 277
原创 关于servlet的request对象
执行顺序:errorpage,过滤器filter,servleterrorpage跟servlet是一样的,都是servlet,只是在web.xml中先匹配error-page项,再通过location子项跳转到指定servlet的url-pattern,触发相应的servlet类,真正处理输出信息的还是servlet类request.getParameter("phx") 获取表单
2017-05-03 15:41:27 266
原创 关于servlet的request对象
执行顺序:errorpage,过滤器filter,servleterrorpage跟servlet是一样的,都是servlet,只是在web.xml中先匹配error-page项,再通过location子项跳转到指定servlet的url-pattern,触发相应的servlet类,真正处理输出信息的还是servlet类request.getParameter("phx") 获取表单
2017-05-03 15:38:44 217
转载 进程间通信
由于不同的进程运行在各自不同的内存空间中.一方对于变量的修改另一方是无法感知的.因此.进程之间的信息传递不可能通过变量或其它数据结构直接进行,只能通过进程间通信来完成。根据进程通信时信息量大小的不同,可以将进程通信划分为两大类型:控制信息的通信和大批数据信息的通信.前者称为低级通信,后者称为高级通信。低级通信主要用于进程之间的同步、互斥、终止、挂起等等控制信息的传递。高级通信主要用于进
2015-07-14 17:28:15 152
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人