BLOG
Enjoy when you can, and endure when you must.
NOV 05, 2013/心得与分享
BROWSERHACKS - 一个好网站推荐
最近开始编写自己网站的第三个版本了。不得不说还是有很长时间没写HTML + CSS了,切片的时候刚开始还真有点不习惯。写页面最麻烦的当然要属遭遇浏览器的兼容性问题,特别是老旧的IE。利用HACK来针对特定浏览器做调整是个好方法。正好发现了一个不错的网站BROWSERHACKS(http://browserhacks.com/),里面收集了各主流浏览器的HACK写法,真的是提供了极大的便利啊,以下是网站的一张截图: PS.我网站的新版本就快上线了哟!
CentOS 6 安装Aptana过程记录
虽然平时也经常使用 Linux,不过开发一直是在 Windows 下进行的,这次尝试在 CentOS 下进行开发,因此尝试首次安装 Aptana,将过程记录以备以后参考:1. 准备:在官网(http://aptana.org/products/studio3/download)下载最新版本的 Aptana Studio;下载 JDK(http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html),当然,这是在没有 Java 环境的情况下,比如我自己。2. 安装并配置 Java:我是 ...
OCT 18, 2013/数据库
学习笔记:Redis入门之事务
首先来看下面的例子: ... print conn.incr('notrans:') ... time.sleep(.1) ... conn.incr('notrans:', -1) ... >>> if 1: ... for i in xrange(3): ... threading.Thread(target=notrans).start() ... time.sleep(.5) ...
OCT 17, 2013/数据库
学习笔记:Redis入门之数据类型 —— ZSET
ZSET,即 Sorted-Sets,和 SETS 类型相似,它们都是字符串的集合。它们之间的主要差别是 Sorted-Sets 中的每一个成员都会有一个分数(score)与之关联,Redis 正是通过分数来为集合中的成员进行从小到大的排序。然而需要额外指出的是,尽管 Sorted-Sets 中的成员必须是唯一的,但是分数(score)却是可以重复的。 在 Sorted-Set 中添加、删除或更新一个成员都是非常快速的操作,其时间复杂度为集合中成员数量的对数。由于 Sorted-Sets 中的成员在集合中的位置是有序的,因此,即便是访问位于集合中部的成员也仍然是非常高效的。 ...
OCT 17, 2013/数据库
学习笔记:Redis入门之数据类型 —— HASHES
HASH 类似于 Python 中的字典,其基本使用也非常简单:HMSET 是 HSET 的升级版,支持一次传入多个键/值对True >>> conn.hmget('hash-key', ['k2', 'k3']) ['v2', 'v3']3 >>> conn.hdel('hash-key', 'k1', 'k3') True >>&g...
OCT 17, 2013/数据库
学习笔记:Redis入门之数据类型 —— SET
SET 和 LIST 很类似,而他们最明显的区别就是 SET 中所有的元素都是唯一的,并且 SET 具有无序性。基本操作:3 >>> conn.srem('set-key', 'c', 'd') True >>> conn.srem('set-key', 'c', 'd') FalseSCARD 可以统计 SET 中的元素个数2SMEMBERS 返回 SET 中的所有元素,这里返回的结果为 ...
OCT 17, 2013/数据库
学习笔记:Redis入门之数据类型 —— LIST
LIST 就是有序的列表,可以从左侧或者右侧插入/弹出值,通过偏移量获取特定的元素等功能。以下是基本操作:推入元素:1L >>> conn.lpush('list-key', 'first') 2L >>> conn.rpush('list-key', 'new last') 3L获取子列表:>>> conn.lrange('list-key', 0, -1)弹出元素:...
OCT 17, 2013/数据库
学习笔记:Redis入门之数据类型 —— STRING
通过默认方式与 Redis 建立连接:>>> conn = redis.Redis()基本的字符串操作:True >>> conn.get('key-str') 'Hello World!'尝试获取一个不存在的 key 会返回 None(控制台不会打印出来)>>> conn.get('key-none')Redis 的加/减操作:如果一个变量的值可以被解析成10进制数或浮点数,则可以对它使用 INCR* 和 DECR* 操作...
OCT 16, 2013/Python
利用Python生成随机数
利用 Python 来实现一些小功能是很简单、快捷的,比如...生成随机数。这里我们会用到两个内置模块:1. string —— 包含许多有用的常量和类2. random —— 用于生成随机数现在有一个简单的需求,就是生成一个任意长度的随机数用作验证码。在 random 中有多种方法可以帮助我们实现随机数的生成,其中之一就是 random.random() ,它生成一个 [0.0, 1.0) 之间的随机数,我们可以利用它来实现:     def random_digits(length):     re...
OCT 16, 2013/Django
Django 时区设置与使用
打开 Django 工程的配置文件,可以看到如下配置项:# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name # although not all choices may be available on all operating systems. # In a Windows environment this must be s...