花了些工夫将碎片网部署到了SAE,中途遇到各类问题。感觉SAE看上去很美,实际上却并不是太成熟(至少python版如此)。下面记录下我遇到的一些主要问题以及解决方法。django版本问题Django1.4都即将发布了,SAE平台自带的SAE版本依旧为1.2x。为使用django1.3版本,你需上传自己的django。具体做法可参考SAE手册中的runtime.html#virtualenv日志模块出错最先遇到的是日至模块的问题。错误显示AdminEmail
系统 2019-09-27 17:46:12 1479
Python引入了一个机制:引用计数。引用计数python内部使用引用计数,来保持追踪内存中的对象,Python内部记录了对象有多少个引用,即引用计数,当对象被创建时就创建了一个引用计数,当对象不再需要时,这个对象的引用计数为0时,它被垃圾回收。总结一下对象会在一下情况下引用计数加1:1.对象被创建:x=42.另外的别人被创建:y=x3.被作为参数传递给函数:foo(x)4.作为容器对象的一个元素:a=[1,x,'33']引用计数减少情况1.一个本地引用离
系统 2019-09-27 17:45:58 1479
网络通用urllib-网络库(stdlib)。requests-网络库。grab�C网络库(基于pycurl)。pycurl�C网络库(绑定libcurl)。urllib3�CPythonHTTP库,安全连接池、支持文件post、可用性高。httplib2�C网络库。RoboBrowser�C一个简单的、极具Python风格的Python库,无需独立的浏览器即可浏览网页。MechanicalSoup-一个与网站自动交互Python库。mechanize-有
系统 2019-09-27 17:38:25 1479
我们将要来学习python的重要概念迭代和迭代器,通过简单实用的例子如列表迭代器和xrange。可迭代一个对象,物理或者虚拟存储的序列。list,tuple,strins,dicttionary,set以及生成器对象都是可迭代的,整型数是不可迭代的。如果你不确定哪个可迭代哪个不可以,你需要用python内建的iter()来帮忙。>>>iter([1,2,3])>>>iter({1:2,2:4})>>>iter(1234)Traceback(mostrece
系统 2019-09-27 17:38:24 1479
Python可以使用xml.etree.ElementTree模块从简单的XML文档中提取数据。为了演示,假设你想解析PlanetPython上的RSS源。下面是相应的代码:fromurllib.requestimporturlopenfromxml.etree.ElementTreeimportparse#DownloadtheRSSfeedandparseitu=urlopen('http://planet.python.org/rss20.xml')
系统 2019-09-27 17:38:13 1479
python是支持多线程的,主要是通过thread和threading这两个模块来实现的。thread模块是比较底层的模块,threading模块是对thread做了一些包装的,可以更加方便的使用。虽然python的多线程受GIL限制,并不是真正的多线程,但是对于I/O密集型计算还是能明显提高效率,比如说爬虫。下面用一个实例来验证多线程的效率。代码只涉及页面获取,并没有解析出来。#-*-coding:utf-8-*-importurllib2,timeim
系统 2019-09-27 17:37:56 1479
一、定制Python的交互提示符Python的默认交互提示符为“>>>”,但它是可以定制的。Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码。一些Linux发布包提供了缺省的启动脚本,一般存放在其home目录,名为.pythonstartup。“Tab完成”和“命令历史”这两个功能增强了提示符应用,两者都基于readline模块。如果没有.pythonstartup文件,可以自己创建一个。简单例子:复制代码代
系统 2019-09-27 17:37:55 1479
最近在自学Python语言,看到向列表增加更多数据时被append(),extend(),insert()方法绕晕了。append和extend都只需要一个参数,并且自动添加到数组末尾,如果需要添加多个,可用数组嵌套,但是append是将嵌套后的数组作为一个对象,extend是将嵌套的数组内容作为多个对象,添加到原数组中作为编程0基础的小白,觉得有必要自己再梳理一遍:1.append()方法是指在列表末尾增加一个数据项。例如:在students列表末尾增加
系统 2019-09-27 17:37:54 1479
一、含有一个装饰器#encoding:utf-8############含有一个装饰器#########defouter(func):definner(*args,**kwargs):#要装饰f1(),这里用这俩形式参数,可以接受任意个参数,不管f1定义几个参数print"1"r=func(*args,**kwargs)#这里要用func,不要用f1print"2"returnrreturninner@outer#这里outer不要加括号deff1(a1,
系统 2019-09-27 17:37:53 1479
python连接数据库操作,方法如下:在本机的mysql数据库中有一个名为yao的库,其中有一个名为user的表,表中的内容如图下面,则是python连接数据库的方法,及查找出表中的内容,代码如下:#!/usr/bin/python#filenameconn.pyimportMySQLdb#载入连接数据库模块try:#尝试连接数据库conn=MySQLdb.connect("localhost","root","www","yao",charset="ut
系统 2019-09-27 17:37:52 1479