- 浏览: 1307512 次
- 性别:
- 来自: 江苏
最新评论
-
honey_fansy:
的确,不要自己的支持就说完美支持,我的就不行,别说我的不是fi ...
无js实现text-overflow: ellipsis; 完美支持Firefox -
fanchengfei:
事件长微博,欢迎转发:http://weibo.com/332 ...
《在路上 …》 写代码也需要一点演技 – python2.6 的 class decorator -
blued:
没有报错,但排版效果一点都没有 咋回事。请指教
python排版工具 -
szxiaoli:
耍人呀,效果在哪儿呀
滑动效果 -
accaolei:
这个能监到控子目录吗?,我测试了一下,发现子目录里的文件监控不 ...
windows监控目录改动
http://wiki.woodpecker.org.cn/moin/PyAbsolutelyZipManual
最新版
最新版
- PyAbsolutelyZipManual
Python 绝对简明手册 -- zsp007@gmail.com ::-- ZoomQuiet [2006-09-15 04:35:33]
{CPUGnav}
1. Py2.5 绝对简明手册
简述
PYthon绝对简明手册,初学必备!
- -- For Python2.5
版本:0.2 beta
作者:张沈鹏
参考:python2.5中文教程
感谢:Zoom.Quiet limodou
-
-- 欢迎指出错误和遗漏,提出建议和意见,请发信到zsp007@gmail.com
1.1. 语法
1.1.1. if
<script type="text/javascript">
function isnumbered(obj) {
return obj.childNodes.length && obj.firstChild.childNodes.length && obj.firstChild.firstChild.className == 'LineNumber';
}
function nformat(num,chrs,add) {
var nlen = Math.max(0,chrs-(''+num).length), res = '';
while (nlen>0) { res += ' '; nlen-- }
return res+num+add;
}
function addnumber(did, nstart, nstep) {
var c = document.getElementById(did), l = c.firstChild, n = 1;
if (!isnumbered(c))
if (typeof nstart == 'undefined') nstart = 1;
if (typeof nstep == 'undefined') nstep = 1;
n = nstart;
while (l != null) {
if (l.tagName == 'SPAN') {
var s = document.createElement('SPAN');
s.className = 'LineNumber'
s.appendChild(document.createTextNode(nformat(n,4,' ')));
n += nstep;
if (l.childNodes.length)
l.insertBefore(s, l.firstChild)
else
l.appendChild(s)
}
l = l.nextSibling;
}
return false;
}
function remnumber(did) {
var c = document.getElementById(did), l = c.firstChild;
if (isnumbered(c))
while (l != null) {
if (l.tagName == 'SPAN' && l.firstChild.className == 'LineNumber') l.removeChild(l.firstChild);
l = l.nextSibling;
}
return false;
}
function togglenumber(did, nstart, nstep) {
var c = document.getElementById(did);
if (isnumbered(c)) {
remnumber(did);
} else {
addnumber(did,nstart,nstep);
}
return false;
}
</script> <script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 x=int(raw_input("Please enter an integer:"))
2 if x<0:
3 print 'Negative Number'
4 elif x==0:
5 print 'Zero'
6 else:
7 print 'Positive Number'
1.1.2. for
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 a=['cat','door','example']
2 for x in a:
3 print x
#如果要修改a的内容,则用a的副本循环,如:
for x in a[:] :
.....................
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 >>>range(10,0,-3)
2 [10,7,4,1]
3 a=['cat','door','example']
4 for i in range(len(a)):
5 print i,a[i]
break,continue 用法和C++中类似
1.1.3. pass
while True:
pass #忽略,什么也不做
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 def fib(n=1000):#参数可以有默认值,多个可选参数赋值可以直接写"参数变量名=值"来快速赋值
2 """这里给函数写文档注释"""
3 a,b=0,1
4 while b<n:
5 print b
6 a,b=b,a+b
#函数可以重命名,如
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 f=fib
2 f(223)
1.1.4. in
-
<script type="text/javascript"> document.write('Toggle line numbers<\/a>'); </script> Toggle line numbers
1 if 'yes' in ('y','ye','yes'):print 'ok'
1.1.5. 参数格式 **para
#参数格式为 **para 表示接受一个字典,为 *para 表示接受一个元组
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 def test(para1,*args,**dic):
2 print para1
3 for arg in args : print arg
4 keys=dic.keys()
5 keys.sort()
6 for key in keys:print key ,':',dic[key]
1.1.6. Lambda函数
-
<script type="text/javascript"> document.write('Toggle line numbers<\/a>'); </script> Toggle line numbers
1 def make_incrementor(n):
2 return lambda x: x+n
3 f=make_incrementor(n)
4 >>>f(0)
5 42
6 >>>f(1)
7 43
1.1.7. List的函数
append(x) 追加到链尾
extend(L) 追加一个列表
insert(i,x) 在位置i插入x
remove(x) 删除第一个值为x的元素,如果不存在会抛出异常
pop([i]) 返回并删除位置为i的元素,i未给定时默认作用在最后一个元素.[i]表示i为可选的
index(x) 返回第一个值为x的元素,不存在则抛出异常
count(x) 返回x出现的次数
sort() 排序
reverse() 翻转,反转
filter(function函数 , sequence序列) 返回sequence中使filer为true的
map(function,sequence,[sequence...]) 返回新的sequence,序列中值为对每个元素分别调用function.
reduce(function,sequence,[init]) 返回一个单值为,计算步骤为 :
- 第1个结果=function(sequence[0],sequence[1])
- 第2个结果=function(第1个结果,sequence[2])
- 返回最后一个计算得值
- 如果有init,则先调用
function(init,sequence[0]) sequence只有一个元素时,返回该元素,为空时抛出异常.
1.1.8. 列表推导式
freshfruit=[' banana ',' loganberry ']
>>>[weapon.strip() for weapon in freshfruit]
['banana','loganberry']
vec=[2,4,6]
>>>[3*x for x in vec if x>3]
[12,18]
>>>[(x,x**2) for x in vec] #一个元素一定要是一个sequence,而
[x,x**2 for x in vec]是错误的
[(2,4),(4,16),(6,36)]
vec2=[4,3,-9]
[x*y for x in vec for y in vec2]
[vec[i]+vec2[i] for i in range(len(vec))]
[str(round(355/113.0,i)) for i in range(1,6)] #str()是转换类型为可以打印的字符
1.1.9. del
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 a=[1,2,3,4,5,6]
2 del a[0]
3 >>>a
4 [2,3,4,5,6]
5 del a[2:4]
6 >>>a
7 [2,3,6]
8 del a[:]
9 >>>a
10 []
11 del a
12 >>>a
抛出异常
1.1.10. 元组
t=1234,5567,'hello'
x,y,z=t #拆分操作可以应用于所有sequence
>>>x
1234
u=t,(1,2,3)
>>>u
((1234,5567,'hello'),(1,2,3))
empty=() #空元组
singleton='hi', #单个元素的元组
1.1.11. set
set(集合):无序不重复的元素集
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 basket = ['apple','orange','apple','pear','apple','banana']
2 fruit=set(basket)
3 >>>fruit
4 set(['orange', 'pear', 'apple', 'banana'])
5 >>>'orange' in fruit
6 True
7 a=set('abracadabew')
8 >>>a
9 set(['a', 'c', 'b', 'e', 'd', 'r', 'w'])
10 b=set('wajgwaoihwb')
11 >>> b
12 set(['a', 'b', 'g', 'i', 'h', 'j', 'o', 'w'])
13 >>> a-b #差
14 set(['c', 'r', 'e', 'd'])
15 >>> a|b #并
16 set(['a', 'c', 'b', 'e', 'd', 'g', 'i', 'h', 'j', 'o', 'r', 'w'])
17 >>> a&b #交
18 set(['a', 'b', 'w'])
19 >>>a^b #(并-交)
20 set(['c', 'e', 'd', 'g', 'i', 'h', 'j', 'o', 'r'])
=== dict ===
字典:关键字为不可变类型,如字符串,整数,只包含不可变对象的元组.列表等不可以作为关键字.如果列表中存在关键字对,可以用dict()直接构造字典.而这样的列表对通常是由列表推导式生成的.
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 tel={'jack':4098,'sape':4139}
2 tel['guido']=4127
3 >>> tel
4 {'sape': 4139, 'jack': 4098, 'guido': 4127}
5 >>>tel['jack']
6 4098
7 del tel['sape']
8 >>>tel.keys()
9 ['jack', 'guido']
10 >>>tel.has_key('jack')
11 True
12 knight={'gallahad':'the pure','robin':'the brave'}
13 for k,v in knight.iteritems():
14 print k,v
输出:
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 gallahad the pure
2 robin the brave
enumerate()返回索引位置和对应的值
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 for i,v in enumerate(['tic','tac','toe'])
2 print i,v
输出: 0 tic
1 tac
2 toe
1.1.12. zip
zip用于多个sequence的循环
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 questions=['name','quest','favorite color']
2 answers=['lancelot','the holy grail','blue']
3 for q,a in zip(questions,answers):
4 print 'What is your %s ? It is %s.'%(q,a)
输出:
What is your name ? It is lancelot.
What is your quest ? It is the holy grail.
What is your favorite color ? It is blue.
1.1.13. reversed反向循环
<script type="text/javascript">
document.write('Toggle line numbers<\/a>');
</script> Toggle line numbers
1 for i in reversed(range(1,4)):
2 print i
输出:
3
2
发表评论
-
关于"Google限制Python"事件我的看法
2009-11-17 15:11 8389本来做一个勤勤恳恳的 ... -
python排版工具
2009-10-15 14:22 3511http://pypi.python.org/pypi/pyt ... -
Fast Asynchronous Python Web Server (Fapws is short)
2009-08-15 12:12 1864http://github.com/william-os4y/ ... -
python奇技淫巧
2009-07-23 22:27 2514http://wiki.python.org/moin/By ... -
跨平台 获取系统信息的python库 http://support.hyperic.com/disp
2009-06-12 11:49 3648The Sigar API provides a portab ... -
频繁集统计 python 封装
2009-05-29 15:49 2665封装的是附件这篇paper的count 因为对比发现这个的综合 ... -
libsvm (python封装) 学习笔记 1
2009-05-19 14:28 42442009-05-19 14:10:38 #!/usr/bin ... -
lcs.py 最长公共子串算法
2009-05-05 15:50 2981感觉用来匹配相似文件比最短编辑距离更靠谱,最短编辑应该是用来纠 ... -
lrucache.py 最近最少使用算法
2009-05-04 13:23 2919lrucache.py 最近最少使用算法 2009-05-04 ... -
史上最快 异步消息队列zeromq 简介
2009-04-30 21:40 27277是的,我喜欢Z开头的东西. http://www.zer ... -
相似单词
2009-03-18 00:54 1775给你一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词 ... -
is_cn_char
2009-03-14 13:39 1351unicode码 def is_cn_char(i): ... -
写一个python的urldecode
2009-03-03 10:57 5127from urllib import unquote def ... -
今天才发现python的sort有个key参数,我好圡...
2009-02-28 20:59 3106>>> a=range(10) >& ... -
发一个山寨版python的Orm
2009-02-24 23:49 2245发一个山寨版的Orm 大概用法见 http://docs. ... -
pyrex学习笔记
2009-02-24 03:36 17040. easy_install pyrex 1.写pyrex ... -
python的一个有趣的细节
2009-02-24 02:00 1375python3.0一个有趣的细节 2009-02-24 01: ... -
python备玩候选者
2009-02-24 00:34 1709* 张沈鹏 推荐网址当然要有一个部署的东西 Exs ... -
python读取mp3 ID3信息
2009-02-18 16:57 2655pyid3不好用,常常有不认识的. mutagen不错,不过 ... -
又写了一个python的route模块
2009-01-14 01:18 2103是的 我很无聊
相关推荐
【Python学习笔记--皮大庆.pdf.zip】是一个针对初学者的Python编程教程,源自英文书籍《How to think like a computer scientist》。这本书以易懂的方式介绍了Python语言的基础知识,旨在帮助没有编程背景的人快速...
python爬虫学习笔记-scrapy框架(1) python scrapy 爬虫 python爬虫学习笔记-scrapy框架(1) python scrapy 爬虫 python爬虫学习笔记-scrapy框架(1) python scrapy 爬虫 python爬虫学习笔记-scrapy框架(1) python ...
如何运行 ...python pyqt_gui.py ——学习参考资料:仅用于个人学习使用! 本代码仅作学习交流,切勿用于商业用途,否则后果自负。若涉及侵权,请联系,会尽快处理! 未进行详尽测试,请自行调试!
统计学习方法笔记-基于Python算法实现。统计学习方法笔记-基于Python算法实现 所有代码均可直接运行。统计学习方法笔记-基于Python算法实现。统计学习方法笔记-基于Python算法实现 所有代码均可直接运行。统计学习...
"Python基础知识点总结" Python 是一种高级的、解释型的编程语言,它支持面向对象、过程式编程和函数式编程。Python 语言具有简洁的语法结构、简洁的代码风格和高效的开发能力。 常量 ------ 在 Python 中,常量...
- 可扩展性:Python可以通过C/C++等语言扩展,也可以将Python代码嵌入到C/C++程序中。 在学习Python的过程中,可以专注于计算机程序语言的基本概念和现代程序语言的精髓,而不会被繁琐的技术细节所困扰。Python的易...
读书笔记共享平台-毕业设计,基于Python+Django+Vue+MySql开发,源码+数据库+毕业论文+视频演示 本论文主要论述了如何使用Python语言开发一个读书笔记共享平台 ,本系统将严格按照软件开发流程进行各个阶段的工作,...
1. **推荐书籍**:学习Python时,有几本经典教材值得参考,包括《Python Cookbook》、《Learn Python the Hard Way》、《Google's Python Class》以及《简明Python教程》。这些书籍覆盖了Python的基础到高级内容,...
0069_极智AI_解读python和c++实现TensorRT elementWise Layer的方法-个人笔记
《王纯业的Python学习笔记》是一份专为Python初学者和进阶者设计的学习资料,旨在帮助读者全面掌握这门强大的编程语言。Python作为一门高级编程语言,因其简洁、易读的语法特性,被广泛应用于数据分析、机器学习、...
《Python数据科学手册》是数据科学领域的一本经典著作,由Jake VanderPlas撰写,它为使用Python进行数据处理、分析和可视化提供了全面而深入的指南。这本书涵盖了Python生态系统中的核心工具,包括NumPy、Pandas、...
“Python数据科学手册”Jupyter笔记,晋升 Python 数据科学家之路
【Python基础课程笔记】 在嵩天老师的Python基础课程中,我们首先探讨了程序设计的基本方法。计算机的本质是根据指令操作数据的设备,具备功能性(如数据计算、输入输出处理和结果存储)和可编程性(根据一系列指令...
### Python全套课程笔记-chap1-python入门与字符串 #### Python基础知识概述 - **开发者**: Python由Guido van Rossum(通常被亲切地称为龟叔)于1989年底发明,首次发布是在1991年。 - **应用场景**: - 运维自动...
### Python学习笔记与简明教程知识点汇总 #### Python 第1课:安装 - **知识点**: - Python 安装包的选择与下载。 - 安装过程中注意事项,如添加环境变量等。 - 验证Python是否安装成功的方法。 #### Python ...
Python学习笔记0001 - 安装与配置Python开发环境 Python学习笔记0002 - 海龟画图 - 初画图形 Python学习笔记0003 - 海龟画图 - 变量 Python学习笔记0004 - 海龟画图 - for循环 Python学习笔记0005 - 海龟画图 - ...
这篇文档将深入探讨标题"**C#-Halcon-Python-C++练习文本笔记.zip**"中涉及的四个关键编程语言——C#、Halcon、Python和C++的相关知识点,以及它们在实际应用中的结合和练习。 首先,让我们从C#开始。C#是一种面向...
【标题】中的“自我学习笔记--LUA;python:网络编程等”表明这是一份包含LUA和Python语言,特别是关于网络编程的学习资料。LUA和Python都是编程语言,广泛应用于游戏开发、脚本编写、自动化任务以及网络服务等领域。 ...