
我们用python写网站的自动登录程序的时候需要创建一个cookies,我们可以利用python的cooklib模块。
比如:
#coding:utf-8
import urllib,urllib2,cookielib
cj = cookielib.LWPCookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_path = 'http://xxxxxxxxxx.com/login'
...
python 获取日期我们需要用到time模块,比如time.strftime方法
time.strftime('%Y-%m-%d',time.localtime(time.time()))
最后用time.strftime()方法,把刚才的一大串信息格式化成我们想要的东西,现在的结果是:
2013-03-31
time.strftime里面有很多参数,可以让你能够更随意的输出自己想要的东西
linux下python的安装 尽管我的unbuntu 10.11版本已经默认更新了python的安装,但这里还是重新介绍一下如何在linux下安装 python。在网上也有一些安装教程。
摘来如下
1.下载源代码 http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz2
2. 安装
...
最近老王[URL=http://]python的付费培训[/URL]主要是以视频教程为主,习题和项目为辅,通过视频的讲解,让学员对基础知识点有一个很好的认识。并且通过习题和项目的形式巩固所学的知识点。
我们的python中文视频教程大纲:
python基础篇
1.虚拟机安装ubuntu开发环境,第一个程序:hello python!
2.linux基本命令以及开发环境。
3.python基本数据类型讲解。
4.python基本数据结构讲解。
5.python语句讲解。
...
近日用Python写一个小程序,从数据库(MS SQL)中读取数据,对数据进行组织后发送到邮箱,在数据内容有中文的地方始终报错,汉字使用UTF-8进行编码倒是不报错了,但发送到邮箱的内容,从数据库中读取出来的汉字却成乱码了,经多方查找资料,把文件的编码设置为cp936(即#coding=cp936),然后在发送邮件时使用gb2312编码。
如果你是utf-8的编码,那在文件的开头设置为#encoding=utf-8
给大家出几个python字符串相关的习题,也是我们培训基础篇里的一点习题。希望对大家学习有帮助。
a = "aAsmr3idd4bgs7Dlsf9eAF"
1 请将a字符串的数字取出,并输出成一个新的字符串。
2 请统计a字符串出现的每个字母的出现次数(忽略大小写,a与A是同一个字母),并输出成一个字典。 例 {'a':3,'b':1}
3 请去除a字符串多次出现的字母,仅留最先出现的一个,大小写不敏感。例 'aAsmr3idd4bgs7Dlsf9eAF',经过去除后,输出 'asmr3id4bg7lf9e'
...
如果你想用python做下载器的话,需要掌握一些网络以及数据处理的相关模块。
1 网络这块的话:urllib,urllib2,httplib.
2 如果需要长时间停留抓取的话,还需要掌握格式化、多线程、多进程、数据库相关处理等。
3 内容过滤这块主要有:正则表达式,beautifulsoup,sgml等。
...
python set函数比较多,下面给大家列一下经常需要用到的一些函数:
比如s = set([1,2,3])
有些函数可以通过dir(s)和help(s)来查看。
s.update(t) 用t 中的元素修改s, 即s 现在包含s 或t 的成员
s.intersection_update(t) s 中的成员是共同属于s 和t 的元素。
s.difference_update(t) s 中的成员是
我们在用列表做删除的时候,可能选择2个方法,一个是del,一个是pop方法。
比如代码
binfo = {'name':'jay','age':20,'python':'haha'}
print binfo.pop('name')#pop方法删除键,并且返回键对应的值
print binfo##输出结果:{'python': 'haha', 'age': 20}
del binfo['python']##内置方法删除元素
print binfo##输出结果:{'age': 20}...
python dict的特点就是无序的,按照key来提取相应value,如果我们需要对value进行排序的话,那可以按照下面的方法来进行:
下面的是按照value的值从大到小的顺序来排序。
dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
dict= sorted(dic.iteritems(), key=lambda d:d[1], reverse = True)
print dict
输出的结果:
[('aa', 74), ('a', 31), ('bc', 5), ('asd', 4), ('c', 3), ('d', 0)]
...
python dict遍历有几种方法供大家选择:
1 for in
2 items
3 iteritems
第2个和第3个是调用字典的内置方法。大家可以通过dir(字典对象)查看下。
下面运行一个例子:
dict={"name":"python","english":33,"math":35}
print "##for in "
...
tuple是python中一个相对简单的类型,它的特点是:有顺序的、不可变的。因此,很显然地tuple有像list 和string一样的 indexing和slicing(分片)的功能,可以通过标号对成员进行访问。同时由于tuple是不可变的,因此试图改变tuple成员的是非法的。 不过由于tuple中的成员可以是list,而list是可变的,因此改变tuple成员的成员是可行的。这怎么理解呢?tuple中保存的中是各个成员 的指针,所说的tuple不可变,也就是说指向各个成员的地址是不可变的。更改作为tuple成员的list里的成员,并不需要变更在tuple中指向这 个list的指针,因此tuple并没有改变。
...
如果给定你一个URL,比如: http://url/api?param=2¶m2=4 我们需要获取参数名和参数值的话,那可以用到python标准库urlparse import urlparsedef qs(url): query = urlparse.urlparse(url).query return di
python 有2个比较重要的内置数据类型:list和tuple
想要了解list相关知识点的话,可以看下python列表操作方法。
而需要看tuple相关的知识点可以看下:python 元组
有可能有些同学需要查看的是2个内置方法,list和tuple.
list:方法是把对象转化为列表类型。
...
python list遍历 是对列表进行的经常性的操作。比如我们需要遍历一个列表:
info = ['a','b','c','d','ee','fff']
for m in range(len(info)):
print info[m]
有些朋友可能喜欢这样操作,但是其实没必要计算列表的长度了。我们可以直接用列表的迭代来处理,比如:
for m in info:
...
假设你需要给列表添加一个元素的话,可以用list的append方法,append()方法接受的参数可以是任意的数据,比如,string,list,tuple等
a = '111'
b = [1,2,3]
c = (1,2,3)
cinfo = [44,55,66]
cinfo.append(a)
cinfo.append(b)
cinfo.append(c)
print cinfo
结果是:[44, 55, 66, '111', [1, 2, 3], (1, 2, 3)]...
有朋友用python在windows下运行乱码。我上面测试了下:
我新建了一个py文件,并且文件编码设置为utf-8,而且文件编码声明为:#encoding=utf-8
info = '中国'
print info
输出结果:\xe4\xb8\xad\xe5\x9b\xbd
如果需要输出中文的话,那我们需要安装gbk的编码进行输出。
info = u'中国' ##先转换为unicode编码
print info.encode('gbk')##转换为gbk编码
info = "{'name' : 'jay', 'sex' : 'male', 'age': 22}" 如何将字符串转化成字典dict类型?这个可以用python的标准库simplejson 转换为JSON格式。
JSON到字典转化:
dictinfo = simplejson.loads(json_str) 输出dict类型
字典到JSON转化:
jsoninfo = simplejson.dumps(dict)输出str类型
比如:
info = {'name' : 'jay', 'sex' : 'male', 'age': 22}
...
最近有个朋友定义一个列表,里面有3个元素,都是中文,比如:
a = ['你好','哈哈','呵呵']
print a
输出结果:['\xe4\xbd\xa0\xe5\xa5\xbd', '\xe5\x93\x88\xe5\x93\x88', '\xe5\x91\xb5\xe5\x91\xb5'] 输出的编码是utf-8
如果你需要输出中文在gbk环境下,可以用迭代来输出:
...
有新手朋友刚接触python列表的话,会发现有[:]这种现象,可能有疑问,下面和大家解释下:
这个[start:end]类似 start=<范围
比如我们定义一个列表:
a = [1,2,3,4,5]
print a[1:4] 假设x是索引下标 x>=1 and x<4 也就是[a1-a3]
输出结果:[2, 3, 4]
print a[::-1] 这里类似列表翻转的概念,python列表对象自身也有reverse()内置方法。
...