编程笔记

  • Python Deque 模块使用详解

    创建Deque序列: from collections import deque d = deque Deque提供了类似list的操作方法: d = deque d.append'1' d.append'2' d.append'3' lend d[0] d[-1] p

  • MySQL性能优化之Open_Table配置参数的合理配置建议

    在MySQL数据库中,Opened_tables表示打开过的表数量,下面将对MySQL Open_Table的合理配置作详细的说明介绍。 MySQL Opened_tables表示打开过的表数量,下文就将教您如何合理配置MySQL Open_Table的值,希望对您学习MySQL数据库能有所帮助。 MySQL Open_Table情况: mysql

  • 对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析

    ThinkPHP官网上曾有一段公告指出,在ThinkPHP 3.1.3及之前的版本存在一个SQL注入漏洞,漏洞存在于ThinkPHPLibCoreModel.class.php 文件 根据官方文档对"防止SQL注入"的方法解释参考http:doc.thinkphp.cnmanualsql_injection.html 使用查询条件预处理可以防止SQL注入,没错,当使用如下代码时可以起到效

  • PHP不用递归遍历目录下所有文件的代码

    实现代码: ** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string * function scanfiles$dir { if ! is_dir $dir return array ; 兼容各操作系统 $dir =

  • 教你如何将 Sublime 3 打造成 Python/Django IDE开发利器

    1. 安装 Sublime Text 3 虽然现在的 Sublime 3 还处于 beta 阶段, 但已经非常稳定了, 而且速度比 Sublime 2 得到了增强. Sublime 3 可以到官网下载并安装. Sublime 虽然是免费软件, 但如果有足够的经济能力, 可以考虑购买以表示支持. 2. 安装 Package Control Sublime Package

  • ruby中执行周期性任务(定时任务)的3种方法

    1.前言 无论是用ruby做系统管理,还是用rails做web开发,都可能遇到周期性任务,它们按照一定时间周期(1小时,2天......)持续地触发。在ruby中,我认为一次性任务使用sidekiq来完成是非常方便的,而周期性的任务就需要用到whenever,sidetiq,clockwork等等gem了。

  • PHP临时文件的安全性分析

    一、简介   临时文件,顾名思义是临时产生的文件,且文件的生命周期很短。   然而,很多应用的运行都离不开临时文件,临时文件在我们电脑上无处不在,主要有以下几种形式的临时文件: 1.文件或图形编辑程序,所生成的中间文件 2.数据库查询时,生成的临时缓存文件,提供之前的结果数据而,以减少再次访问数据库的代价;通常用于远程数据库或远程xml

  • PHP实现的英文名字全拼随机排号脚本

    需求: 1、执行脚本后,想去的同学输入英文名字全拼,产生随机数01-99之间的数字, 数字越大就去参加项目实践,前面已经抓到的数字,下次不能在出现相同数字。 2、第一个输入名字后,屏幕输出信息,并将名字和数字记录到文件里,程序不能退出 继续等待别的学生输入。 实现代码(请在命令行执行,而非WEB环境):

  • php实现批量压缩图片文件大小的脚本

    今天,想上传大量图片到论坛,由于图片是单反拍的,体积较大,就写了一个脚本,批量压缩图片。 ?php if $handle = opendir'.old' { while false !== $file = readdir$handle { if $file == '.' || $file == '..' {

  • ThinkPHP框架任意代码执行漏洞的利用及其修复方法

    ThinkPHP是国内著名的开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结 构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)

  • windows7下安装php的imagick和imagemagick扩展教程

    最近的PHP项目中,需要用到切图和缩图的效果,在linux测试服务器上很轻松的就安装好php imagick扩展。但是在本地windows开发环境,安装过程遇到好多问题,在此与大家分享。 1. 下载 ImageMagick 下载地址:a href="http:imagemagick.orgscriptbinary-releases.php#windows" rel="external

  • windows7下安装php的php-ssh2扩展教程

    因为想做一个往测试服务器传文件的需求,看到PHP支持ssh操作,所以整理了下安装过程,与大家分享下。 安装步骤 1. 下载 php extension ssh2 下载地址 a rel="external nofollow" href="http:windows.php.netdownloadspeclreleasesssh20.

  • nginx支持codeigniter的pathinfo模式url重写配置写法示例

    开发环境 codeigniter 2.14 PHP 5.4.18 nginx 1.4.2 Codeigniter配置 打开 codeignite 的 config.php 文件修改如下: $config['uri_protocol'] = "PATH_INFO

  • php从memcache读取数据再批量写入mysql的方法

    本文实例讲述了php从memcache读取数据再批量写入mysql的方法。分享给大家供大家参考。具体分析如下: 用 Memcache 可以缓解 php和数据库压力下面代码是解决高负载下数据库写入瓶颈问题,遇到最实用的:写入ip pv uv的时候,用户达到每分钟几万访问量,要记录这些数据,实时写入数据库必定奔溃. 用以下技术就能解决,还有如用户注册,同一时间断内,大量用户注册,可以缓存后

  • Python编程把二叉树打印成多行代码

    题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 思路: 1、把每层节点的val值用list存好 2、把每层节点存好: ①计算当层节点的个数,这样就保证下一步每层的结点都被pop光 ②然后依次弹出从左到右的每个节点,然后在list中加入该节点对应的左结点、右节点(如果存在的话)

  • python实现二叉树的遍历

    本文实例为大家分享了python实现二叉树的遍历具体代码,供大家参考,具体内容如下 代码: # -*- coding: gb2312 -*- class Queue

  • Python实现基于二叉树存储结构的堆排序算法示例

    本文实例讲述了Python实现基于二叉树存储结构的堆排序算法。分享给大家供大家参考,具体如下: 既然用Python实现了二叉树,当然要写点东西练练手。 网络上堆排序的教程很多,但是却几乎都是以数组存储的数,直接以下标访问元素,当然这样是完全没有问题的,实现简单,访问速度快,也容易理解。 但是以练手的角度来看,我还是写了一个二叉树存储结构的堆排序 其中

  • Python二叉树的定义及常用遍历算法分析

    本文实例讲述了Python二叉树的定义及常用遍历算法。分享给大家供大家参考,具体如下: 说起二叉树的遍历,大学里讲的是递归算法,大多数人首先想到也是递归算法。但作为一个有理想有追求的程序员。也应该学学非递归算法实现二叉树遍历。二叉树的非递归算法需要用到辅助栈,算法着实巧妙,令人脑洞大开。 以下直入主题: 定义一颗二叉树,请看官自行想象

  • python先序遍历二叉树问题

    问题 如何遍历一个二叉树 遍历二叉树就是访问二叉树的每一个节点 二叉树父结点下先左访问,先序遍历(根左右) 例如:遍历以下的二叉树 img src="https:img.nhooo.comstaticupload2103131217120.p

  • Python算法之求n个节点不同二叉树个数

    问题 创建一个二叉树 二叉树有限多个节点的集合,这个集合可能是: 空集 由一个根节点,和两棵互不相交的,分别称作左子树和右子树的二叉树组成 创建二叉树:

  • Python探索之创建二叉树

    问题 创建一个二叉树 二叉树有限多个节点的集合,这个集合可能是: 空集 由一个根节点,和两棵互不

  • python实现的二叉树定义与遍历算法实例

    本文实例讲述了python实现的二叉树定义与遍历算法。分享给大家供大家参考,具体如下: 初学python,需要实现一个决策树,首先实践一下利用python实现一个二叉树数据结构。建树的时候做了处理,保证建立的二叉树是平衡二叉树。 # -*- coding: utf-8 -*- from collections import deque class Node: def

  • Python编程实现二叉树及七种遍历方法详解

    本文实例讲述了Python实现二叉树及遍历方法。分享给大家供大家参考,具体如下: 介绍: 树是数据结构中非常重要的一种,主要的用途是用来提高查找效率,对于要重复查找的情况效果更佳,如二叉排序树、FP-树。另外可以用来提高编码效率,如哈弗曼树。 img src="https:img.nhooo.comstaticupload

  • Python实现二叉树结构与进行二叉树遍历的方法详解

    二叉树的建立 使用类的形式定义二叉树,可读性更好 class BinaryTree: def __init__self, root:

  • 使用CodeIgniter的类库做图片上传

    CodeIgniter的文件上传类允许文件被上传。您可以设置指定上传某类型的文件及指定大小的文件。 上传文件普遍的过程: 一个上传文件用的表单,允许用户选择一个文件并上传它。当这个表单被提交,该文件被上传到指定的目录。同时,该文件将被验证是否符合您设定的要求。一旦文件上传成功,还要返回一个上传成功的确认窗口。stron

  • jquery 3D 标签云示例代码

    相关选项 zoom: 90 初始的缩放度 min_zoom: 25 max_zoom: 120 zoom_factor: 2 - 鼠标滚轮的缩放速度 rotate_factor: -0.45 - 鼠标移动时球体旋转的数量。正数将反向旋转 fps: 10 - 定义每秒动画更新的次数 centrex: 250 - 在container div中水平

  • js获取当前页面的url网址信息

    1、设置或获取整个 URL 为字符串: window.location.href 2、设置或获取与 URL 关联的端口号码: window.location.port 3、设置或获取 URL 的协议部分 window.location.protocol 4、设置或获取 href 属性中跟在问号后面的部分 window.location.sear

  • java实现字符串和数字转换工具

    本文实例为大家分享了java字符串和数字转换工具的具体代码,供大家参考,具体内容如下 package com.test.util; ** * 数字工具类 * public class NumberUtil { ** * 数字转换为字符串 * @param num 数字 * @return 字符串,如果 num 为空, 返回空字符串 *

  • java 开发使用字符串和数字的性能分析

    java 开发使用字符串和数字的性能分析 前言: 分析使用字符串和数字,在软件产品上线后用户较多的情况下,很有必要考虑的问题,这直接体现了用户的体验程度,总不能让用

  • java从字符串中提取数字的简单实例

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法,正则表达式,集合类,还有就是String类提供的方法。 1 String类提供的方法: package 测试练习; i

  • java判断字符串是否为数字的方法小结

    本文实例总结了java判断字符串是否为数字的方法。分享给大家供大家参考,具体如下: 方法一:用JAVA自带的函数 public static boolean isNumericString str{ for int i = str.length;--i=0;{ if !Character.isDigitstr.charAti{

  • 简单分析javascript面向对象与原型

    本文主要内容参考来自JavaScript高级程序设计,面向对象与原型章节: 1、工厂模式 ECMAScript 可以通过工厂模式来创建对象: 工厂模式 function createObjectname, age { var obj = new Object; 创建对象 obj.name = na

  • JavaScript面向对象的实现方法小结

    本文实例总结了JavaScript面向对象的实现方法。分享给大家供大家参考。具体分析如下: 方法1: var person = { name: 'hello world', age: 22, sayHello:function{ alert'I\'m 'this.name ',and I\'m ' this.age 'years old'; }

  • JavaScript 面向对象与原型

    ECMAScript有两种开发模式:1.函数式过程化;2.面向对象OOP; 一 创建对象 1.普通的创建对象 创建一个对象,然后给这个对象新的属性和方法; var box = new Object; 创建一个Object对象; box.name = 'lee'; 创建一个name属性并赋值

  • 深入理解JavaScript系列(17):面向对象编程之概论详细介绍

    介绍 在本篇文章,我们考虑在ECMAScript中的面向对象编程的各个方面(虽然以前在许多文章中已经讨论过这个话题)。我们将更多地从理论方面看这些问题。 特别是,我们会考虑对象的创建算法,对象(包括基本关系 - 继承)之间的关系是如何,也可以在讨论中使用(我希望将消除之前对于JavaScript中OOP的一些概念歧义)。 英文原文:a href="h

  • javascript面向对象程序设计(一)

    注释里讲解的十分细致了,这里就不多废话了,直接上代码: script type="textjavascript" ECMA-262把对象定义为:“无序属性的 集合,其属性可以包含基本值、对象或者函数” 理解对象,最简单的方式就是通过创建一个Object的实例,然后为它添加属性和方法 var person = new Object; perso

  • 浅谈javascript面向对象程序设计

    ECMA-262把对象定义为:“无序属性的 集合,其属性可以包含基本值、对象或者函数” 理解对象,最简单的方式就是通过创建一个Object的实例,然后为它添加属性和方法 var person = new Object; &nb

  • javascript面向对象之共享成员属性与方法及prototype关键字用法

    本文实例讲述了javascript面向对象之共享成员属性与方法及prototype关键字用法。分享给大家供大家参考。具体如下: 共享成员属性与方法,使用prototype关键词 script language="javascript" type="textjavascript" function Dog{} Dog.prototype.sh

  • javascript面向对象之定义成员方法实例分析

    本文实例分析了javascript面向对象之定义成员方法。分享给大家供大家参考。具体如下: javascript面向对象,定义成员方法如下所示: script language="javascript" type="textjavascript" function Personname,age{ this.name = name

  • javascript面向对象之this关键词用法分析

    本文实例分析了javascript面向对象之this关键词用法。分享给大家供大家参考。具体分析如下: 当需要初始化某个属性时,可以在原型对象内使用this关键词。如下面实例: script language="javascript" type="textjavascript" function Person{ this.name