当安装好python之后,其实就已经可以进行开发了。下面我们开始写第一行python代码。值得纪念的时刻:Helloworld如果是用windows,请打开CMD,并执行python。如果是UNIX类的,就运行shell,并执行python。都会出现如下内容:Python2.7.6(default,Nov132013,19:24:16)[GCC4.6.3]onlinux2Type"help","copyright","credits"or"license"
系统 2019-09-27 17:45:25 1637
SessionMiddleware激活后,每个传给视图(view)函数的第一个参数``HttpRequest``对象都有一个session属性,这是一个字典型的对象。你可以象用普通字典一样来用它。例如,在视图(view)中你可以这样用:#Setasessionvalue:request.session["fav_color"]="blue"#Getasessionvalue--thiscouldbecalledinadifferentview,#orman
系统 2019-09-27 17:38:45 1637
先给出结论:要替换的字符数量不多时,可以直接链式replace()方法进行替换,效率非常高;如果要替换的字符数量较多,则推荐在for循环中调用replace()进行替换。可行的方法:1.链式replace()string.replace().replace()1.x在for循环中调用replace()「在要替换的字符较多时」2.使用string.maketrans3.先re.compile然后re.sub……defa(text):chars=""for
系统 2019-09-27 17:38:36 1637
心血来潮写了个多线程抓妹子图,虽然代码还是有一些瑕疵,但是还是记录下来,分享给大家。Pic_downloader.py#-*-coding:utf-8-*-"""CreatedonFriAug0717:30:582015@author:Dreace"""importurllib2importsysimporttimeimportosimportrandomfrommultiprocessing.dummyimportPoolasThreadPooltype
系统 2019-09-27 17:38:32 1637
在我以前介绍Python2.4特性的Blog中已经介绍过了decorator了,不过,那时是照猫画虎,现在再仔细描述一下它的使用。关于decorator的详细介绍在Python2.4中的What'snew中已经有介绍,大家可以看一下。如何调用decorator基本上调用decorator有两种形式第一种:复制代码代码如下:@Adeff():这种形式是decorator不带参数的写法。最终Python会处理为:复制代码代码如下:f=A(f)还可以扩展成:复制
系统 2019-09-27 17:38:31 1637
1.如果模块是被导入,__name__的值为模块名字2.如果模块是被直接执行,__name__的值为'__main__'Py1.py复制代码代码如下:#!/usr/bin/envpythondeftest():print'__name__=',__name__if__name__=='__main__':test()Py2.py复制代码代码如下:#!/usr/bin/envpythonimportPy1.pydeftest():print'__name__
系统 2019-09-27 17:38:30 1637
将套接字流重定向到标准输入或输出流#!/usr/bin/envpython3"""测试socket-stream重定向模式"""importsys,os,timefrommultiprocessingimportProcessfromsocketimport*definitListenerSocket(port=50008,host=''):"""初始化在服务器模式下调用者用于监听连接的套接字"""sock=socket()try:sock.bind((h
系统 2019-09-27 17:38:28 1637
写程序经常需要用到从文件或者标准输入中按行读取信息,这里汇总一下。方便使用1.C++读取文件#include#includeintmain(){constchar*in_file="input_file_name";constchar*out_file="output_file_name";FILE*p_in=fopen(in_file,"r");if(!p_in){printf("openfile%sfailed!!!",in_file);return-
系统 2019-09-27 17:38:25 1637
int数字类型classint(object):"""int(x=0)->intorlongint(x,base=10)->intorlongConvertanumberorstringtoaninteger,orreturn0ifnoargumentsaregiven.Ifxisfloatingpoint,theconversiontruncatestowardszero.Ifxisoutsidetheintegerrange,thefunctionre
系统 2019-09-27 17:38:22 1637
这几天在翻旧代码时发现以前写的注释部分有很多单词拼写错误,这些单词错得不算离谱,应该可以用工具自动纠错绝大部分。用Python写个拼写检查脚本很容易,如果能很好利用aspell/ispell这些现成的小工具就更简单了。要点1、输入一个拼写错误的单词,调用aspell-a后得到一些候选正确单词,然后用距离编辑进一步�鹧〕龈�精确的词。比如运行aspell-a,输入‘hella'后得到如下结果:hell,Helli,hello,heal,Heall,he'll
系统 2019-09-27 17:38:21 1637
我在工作的时候,在测试环境下使用的数据库跟生产环境的数据库不一致,当我们的测试环境下的数据库完成测试准备更新到生产环境上的数据库时候,需要准备更新脚本,真是一不小心没记下来就会忘了改了哪里,哪里添加了什么,这个真是非常让人头疼。因此我就试着用Python来实现自动的生成更新脚本,以免我这烂记性,记不住事。主要操作如下:1.在原先basedao.py中添加如下方法,这样旧能很方便的获取数据库的数据,为测试数据库和生产数据库做对比打下了基础。defselect
系统 2019-09-27 17:38:12 1637
面向对象的编程语言在写大型程序的的时候,往往比面向过程的语言用起来更方便,安全。其中原因之一在于:类机制。类,对众多的数据进行分类,封装,让一个数据对象成为一个完整的个体,贴近现实生活,高度抽象化。但是,python对类的封装并不好,因为所有的属性和方法都是公开的,你可以随意访问或者写入,你可以在类的外部对类的属性进行修改,甚至添加属性。这的确让人感到不安。下面就来总结一下学习后的解决方案。1,使用2个下划线前缀隐藏属性或者方法。__xxx#!/usr/b
系统 2019-09-27 17:38:10 1637
列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的。排序,数字、字符串按照ASCII,中文按照unicode从小到大排序x=[4,6,2,1,7,9]x.sort()print(x)#[1,2,4,6,7,9]如果需要一个排序好的副本,同时保持原有列表不变,怎么实现呢?x=[4,6,2,1,7,9]y=x[:]y.sort()print(y)#[1,2,4,6,7,9]print(x)#[4,
系统 2019-09-27 17:38:09 1637
1.上下文管理器是什么?举个例子,你在写Python代码的时候经常将一系列操作放在一个语句块中:(1)当某条件为真�C执行这个语句块(2)当某条件为真�C循环执行这个语句块有时候我们需要在当程序在语句块中运行时保持某种状态,并且在离开语句块后结束这种状态。所以,事实上上下文管理器的任务是�C代码块执行前准备,代码块执行后收拾。上下文管理器是在Python2.5加入的功能,它能够让你的代码可读性更强并且错误更少。接下来,让我们来看看该如何使用。2.如何使用上
系统 2019-09-27 17:38:08 1637
1.在Scrapy工程下新建“middlewares.py”#Importingbase64librarybecausewe'llneeditONLYincaseiftheproxywearegoingtouserequiresauthenticationimportbase64#StartyourmiddlewareclassclassProxyMiddleware(object):#overwriteprocessrequestdefprocess_r
系统 2019-09-27 17:38:07 1637