Python引用中的坑
早就知道,python中万物皆对象,参数的传递都是”对象引用”的传递,这个和c++中值传递和参数传递都不一样,与两者的结合体有点神似。 c++中分为指针传递(含引用)和值传递,传递方式可以指定; python中分为可变对象传递和不可变对象传递,传递方式不可指定。自从转向python后,已经踏了3次引用的大坑。 [继续阅读]
早就知道,python中万物皆对象,参数的传递都是”对象引用”的传递,这个和c++中值传递和参数传递都不一样,与两者的结合体有点神似。 c++中分为指针传递(含引用)和值传递,传递方式可以指定; python中分为可变对象传递和不可变对象传递,传递方式不可指定。自从转向python后,已经踏了3次引用的大坑。 [继续阅读]
成千上万的package和module是python最强大得威力,最近在使用python的import时有点晕,做了个小的test想弄清楚各种import的不同之处, 下面是我的一个小实验,看来python的基础只是不扎实呀-_-! [继续阅读]
好久没更新了,换工作有一只都很忙。今天在虚拟机中同时开了windows 7 和 centos 后,centos 莫名其妙的开始在进度条, google之。 还原/boot/grub/menu.lst 网上说可能是/boot/grub/menu.lst中的信息丢失,还原就好。进入grub后操作如下: [继续阅读]
前段时间翻译了Argparse简易教程,刚学python,业余时间做了个Ubuntu One的命令行工具练下手,现在基本上可以使用了,有很多地方没有优化处理,大家可以自己修改下,源码在ubuntuone_uploader,下面说说一些用法。 ####安装 脚本依赖oauth2, ubuntu 下可以 sudo apt-get install python-oauth2 安装。 git clone https://github.com/likebeta/ubuntuone_uploader.git cd ubuntuone_uploader chmod +x ubuntuone_uploader.py [继续阅读]
年底2个月开发移动联机游戏,此次使用新的后台框架:python和c++的组合。交互协议使用protobuf,数据库是mysql,缓存是memcache(后期会缓存redis),lua来处理配置,日志用到了log4cplus。 这次的后台系统运行在linux下,开发还是使用vs,每次修改完代码,都去linux下make。本来想有ftp,挺麻烦的,最后发现了samba,下面记录下配置。 [继续阅读]
停留的是记忆,不停留的是年华似水 从大学开始,时间像磕了药般越跑越快,来不及回首,13年也悄然远去… 这一年好像什么都没变,又好像什么都变了; 好像得到很多,又好像什么都不曾拥有。 [继续阅读]
原文:Argparse Tutorial 译者:likebeta 本教程是对于Python标准库中推荐使用的命令行解析模块argparse的简单介绍。 PS:还有其他两个模块实现这一功能,getopt(等同于C语言中的getopt())和弃用的optparse。因为argparse是基于optparse,所以用法很类似。 [继续阅读]
缘由 早先PC端有几个服务器由于需求牵扯到了一些HTTP请求,当时使用了Mongoose,当时没怎么接触,前段时间客户端做加速器又准备使用个小型web server,选定的也是这个,处于兴趣,前N个星期六抽了半天看了下相关文档,记录下(我承认我TM懒)。 [继续阅读]
问题 个人认为 Singleton 模式是设计模式中最为简单、最为常见、最容易实现,也是最应该熟悉和掌握的模式。且不说公司企业在招聘的时候为了考察员工对设计的了解和把握,考的最多的就是 Singleton 模式。 Singleton 模式解决问题十分常见,我们怎样去创建一个唯一的变量(对象?在基于对象的设计中我们可以通过创建一个全局变量(对象)来实现,在面向对象和面向过程结合的设计范式(如 C++中)中,我们也还是可以通过一个全局变量实现这一点。 [继续阅读]
问题 假设我们要开发一款游戏,当然为了吸引更多的人玩,游戏难度不能太大(让大家都没有信心了,估计游戏也就没有前途了),但是也不能太简单(没有挑战性也不符合玩家的心理)。于是我们就可以采用这样一种处理策略:为游戏设立等级,初级、中级、高级甚至有BT 级。假设也是过关的游戏,每个关卡都有一些怪物(monster)守着,玩家要把这些怪物干掉才可以过关。 [继续阅读]
Simple Factory模式经常在系统开发中用到,但是这并不是 Factory 模式的最大威力所在(因为这可以通过其他方式解决这个问题)。Factory模式不单是提供了创建对象的接口,其最重要的是延迟了子类的实例化。 Factory模式的应用并不是只是为了封装对象的创建,而是要把对象的创建放到子类中实现:Factory 中只是提供了对象创建的接口,其实现将放在 Factory 的子类ConcreteFactory中进行。 [继续阅读]
工厂模式 简单工厂(Simple Factory)模式:又称静态工厂方法(Static Factory Method)模式 工厂方法(Factory Method)模式:又称多态性工厂(Polymorphic Factory)模式 抽象工厂(Abstract Factory)模式:又称工具箱(Kit 或 Toolkit)模式 从设计模式的类型上来说,简单工厂模式是属于创建型模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。 [继续阅读]
前段时间同事离职,他的机子配置比较好,我和老大申请,无耻的换用他的主机,收编了他的显示器。这下内存和硬盘都上去了,总得折腾点事情做啊,安装虚拟机,折腾个 ubuntu 用用,刚好同事的 ip 我也霸占了(我们局域网的 ip 是静态绑定的)。我想把原来在 windows 下搭建的 php 环境放在 linux 上,这样的话就需要配置个 ip , vmware 的网络设置需要是 bridge 模式,不能是原来的 nat 模式。 debian 下配置静态 ip 和 dns 挺简单的, ubuntu 下有点不同,在此记录下。 [继续阅读]
这玩意在内测的时候就注册了号,但是没用过。最近Google Reader关闭,说实话目前真找不到替代品。订阅的feed太多,很多都来不及查看,但是email却是经常查看的,比如很多博客使用QQ邮件列表,feedburner来进行邮件更新推送,订阅用户可以不用主动去查看。但是很多博客还是不能使用邮件来订阅的,当然我们可以使用QQ邮件列表,feedburner创建个item来进行转换,但是我也可以使用ifttt做到类似的功能,并且功能更强大。 [继续阅读]
英语一直都不好,四级不知道咋过的(居然还485),六级考过一次,也没有报什么希望,耳机都没带,结果得了个245(会不会2和4写错位子了)。最近本屌丝想写下个人简历,在命名网址的时候纠结了,有道词典的翻译如下: cv n. curriculum vitae :简历(书), 个人履历 resume n. 摘要;履历,简历(该释义发音[rezju:’mei]) vt. 重新开始,继续;恢复,重新占用 vi. 重新开始,继续 [继续阅读]
5.1的时候,狠心刮了胡子,第一次啊,尼玛,怎么看都像太监,无奈长得又慢。然后在当当买了个剃须刀,到货了发现是装电池的(提前没看清楚),不过完美的流线体,还是挺不错的。当时因为胡子没有长出来,宿舍又没有电池,就扔在那里没在意。 [继续阅读]
xshell的默认配色风格真的不敢恭维,用久了,眼睛疼,网上搜了一圈,找到了个不错的配色方案,我把放在这里,省的以后再找,还可以凑篇文章,hia hia [继续阅读]
最近在折腾openshift云空间,真是个好东西,相比国内的云空间直接甩开几条街,还可以绑定域名,免费的配置已经足够我们折腾了,看了教程后,搞了几个app,感觉速度还行,况且我会再加上一层cdn。直接把自己的几个站移了过来,等待dns和cdn都生效后,速度不错,各方面都比较满意(git来提交代码爽爆了)。 [继续阅读]
shell脚本的运行大体分为下面几种方式: sh filename ./filename 或 /$(parent_path)/filename source filename 或者 . filename 不同的 script 运行方式会造成不一样的结果,比如对 bash 的环境的影响。 [继续阅读]
现在云存储越演越烈,各大公司都推出了自己的网盘,竞争进入白热化,有的以大容量吸引人,有的以速度著称,有的以网赚扎根,有的以托微博圈地,有的定位企业,还有的主打安全…… 我接触网盘是08年大一的时候,到现在基本上所有的网盘都不同程度的试用过,目前还在使用的也还有几种。大大小小的N种网盘中只有坚果云和skydrive支持不同目录的同步,而其他的金山快盘,酷盘,百度网盘,云诺,新浪微盘,115,华为网盘,够快,Dropbox,Google Driver,Box等等都只能同步选定的一个目录。 [继续阅读]
大学生涯没有接触linux和开源社区是一大遗憾,年前买本鸟哥的Linux私房菜 第三版一直没看,最近扒出来开始学习,大概看了6,7章,发现有些东西当时记下来了,过后又忘记了,所以准备在这里记录下学习笔记,记录一下我认为比较重要的东西,方便自己查阅。 文件拥有者概念 拥有者:文件的所有者,表示谁拥有此文件 群组:文件属于哪个群组,群组中的成员对此文件有相同的某种权限,方便团队合作 其他人:不是拥有者,不是root,也不属于该文件所属群组的人 [继续阅读]
今天再次用到了base64编解码,以前看过,现在又有点陌生了,上网查了下,然后用c++实现了下,在此记录下,以备将来查用。 介绍 百度百科和维基百科说的很清楚,我就不罗嗦了 用途 Base64算法不是为了防止内容被人破解而使用的算法, 因为破解Base64太容易了, 就是简单的字符替换。 Base64还有个不好的地方,就是加密后, 长度会变成。 那我们为何还要使用Base64 呢?因为Base64可以把乱七八糟的二进制转化为字符串,这个特性在很多地方很有用。 [继续阅读]
最近喜欢上了Git,然后对Github一发不可收拾, 原来也听过使用Github Pages搭建博客, 当时因为在使用WordPress, 没怎么注意这个, 偶然的机会看到了阮一峰博客上介绍Github Pages和Jekyll入门, 刹那间有种相逢恨晚的感觉… 大学 那一年我18岁,她也18岁, 我们…sorry,意淫了… 2008年离家去洛阳上学, 这算是我真正意义上的离开家乡去外地上学。 记得那一年是爸爸送我去的学校, 大学的一起都让我感到新奇。开学没几天开始体育选课, 由于我没接触过电脑, 我特么还得让同学帮忙选课, 起跑线都输人一大截啊 [继续阅读]