闲得没事干 又没心思深入研究其他东西 找了个折中的办法 看点新玩意儿 事实证明还是成功的 这次是Python 看的是http://sebug.net/paper/python/index.html 《简明Python教程》 只当扩充眼界 说实话 你让我Python搞个实际可用的东西 我依旧无能为力 悲催吧
简单把笔记整理一下 跟我认知中相同的部分都略过了
* Python中 字符串 '...' "..."是一样的 '''...''' """..."""这样的三引号代表多行字符串
* 自然字符串用 r"...\n" 这样\n不会被转义
* Unicode字符串 u"..."
* 在行末加入\ 表示下行继续
* 通过raw_input()获取输入
* 注释语句用#
* Python中的if语句 if-elif-else
* Python中的while语句 while...else(可选)..
* Python中的for语句 for...in.. 注意Python没有for(;;) for in类似于foreach/for(i:I)这样的形式
扩展for i in range(1,5) ----[1,2,3,4]
* 以上程序块不是通过{} 而是通过缩进 在判断语句后跟的是:即
if(...):
...
while(...):
...
else:
... 这样的形式
* break终止循环 不会执行可选else中的内容
* 函数定义 def function():
* 代参数的 def function(a,b=5); #这个还带默认参数 默认参数必须在参数表最后 (a=5,b)这样是错误的
* 全局变量 global x (否则内部变量都会被作为私有变量处理)
一个函数定义例子:
def f(a,b=5,c=10)
f(3,7) ---> a=3,b=5,c=10
f(25,c=24) ---> a=25,b=5,c=24
f(c=20,a=100) ---> a=100,b=5,c=20
* retun None(None就是常见的null)
* 关于DocString 文档字符串
def a():
'''A........
........
.......。'''
....
文档字符串是一个多行字符串(三引号)
大写开始,句号结尾
第二行为空行
第三行开始是描述介绍
当调用print a.__doc__时 会被打印出来
* 使用sys模块
import sys 或者 from sys import *(感觉类似java中引用package包)
* 自己定义模块 mymodule.py (其实就是使用其他py)
def sayhi():
...
version='0.1'
使用
import mymodule
mymodule.sayhi()
print mymodule.version
* 数据结构部分
* 列表list
用[]包含 [a,b,c] 有append del len(list) sort等方法
* 元组
用()包含 (a,b,c) 空元组a为 a() 特别注意 元组 b 要写成 b(1,) 最后个逗号必须
* 列表和元组的区别 列表是可变的 元组是固定的
* 元组的打印方法
print "&s is &d years old" % (name,age)
(好吧 这个不是类似于C了么)
* 数据字典
ab={a:1,
b:2,
c:3}
取值方法 ab["a"]
* 数据词典打印
for name,address in ab.items():
print "&s at &s" % (name,address)
* 另一种打印
if "aaa" in ab: #检查是否存在
print ab["aaa"]
* 序列 序列下标从0开始 0,1,2,3......
下标支持负数 0,1,2........-3,-2,-1(最后一个为-1)
* 序列切片操作 str[1:3] 1-3(这是下标 截取了1,2两个元素 末尾元素不在其中)
其他一些切片str[:-1] str[1:] str[:]
* 切片操作是copy了一个新的对象(不是赋值 赋值是产生一个参考,仍然指向同一个元素) (好吧 又来搞这个问题了)
* Python中一切都是对象 一个整数也是一个对象
* self参数 表示自己 定义函数时其实都有一个self 比如count(self) 当定义参数列表 最好第一个为self 之后为自己的 而无参也最好写个self
self类比下类似于this
* 初始化方法
def __init__(self) 当类对象建立时会被执行
同样可以类比构造函数
* 同理还有__del__(self..) (析构)等方法
* _aaa 表示这是一个私有变量(默认规则 当做命名规则吧 不是系统认定)
* __aaa 声明一个私有变量 这个是系统认定的 不做声明时都是共有public的
* 继承
class Super
class Chile(Super) 注意(...)其实是一个元组 也就是 可以多重继承 class a(b,c,d)
* 输入输出 raw_input / print
* 文件
f = file("urlPath",'w') #'w'是模式 常用的有'r'读(默认),'w'写,'a'追加
f.write(...)
f.close()
f.readline() 都是常用方法
* 存储器pickle 有一个cPickle 是用c写的 速度上更快
这是一个持久化对象 使用方法:
import cPickle as p
shoplist=['apple','mango','banana']
f=file(shoplist,'w')
p.dump(shoplist,f) #存操作
store=p.load(f) #取操作
* Python中的异常处理
try:
...
except EOFError:
...
except:
...
finally:
...
else:
...
其实是一样的
* 抛出异常 raise xxxExeption() (等同于java的throw)
后面的部分就是系统模块的东西 基本就是个list
* 命令行参数 sys.argv 该列表中至少包含一个项目,即当前运行程序的名称,作为sys.argv[0]
* os模块
os.sep 路径分割符(根据系统各不相同 如linux是'/' windows是'\\')
os.name 平台名称 windows--nt linux--posix
os.getcwd 当前目录(Python脚本工作目录)
os.getEnv os.putEnv 环境变量
os.listdir 返回所有目录和文件
os.remove 删文件
os.sytem 运行shell
os.linesep 终止符 windows--'\r\n' linux--'\n' mac--'\r'
os.isfile os.isdir 是否为文件/目录
os.path.split 返回目录名和文件名 例如 c:\\abc\bc\abc.txt 返回c:\\abc\bc 和 abc.txt
* Python中的更多内容
* 特殊方法
比如 __init__ , __del__
还有 __getitem__() 使用x[key]索引操作
__str__() 即toString
__lt__(self,other) 小于操作 compare?
__len__(self) 序列对象内置的len方法
* 列表综合
得到一个新的列表 包含原列表中所有大于2的元素 将其乘2后存储
listone=[2,3,4]
listtwo=[2*i for i in listone if i>2]
最终得到listtwo是[6,8]
* 函数中接收元组,列表(作参数)
def(a,*b)
其中*b就是一个元组 所有多余的参数都被认为是元组b中的元素
def(a,**b)
**b表示字典 所有多余参数被认为是key/value 放在b中
* lambda形式
用于创建新的函数对象,并在运行时返回他们
def make_repeater(n):
return lambda s:s*n #跟一个表达式 并且只能跟表达式
twice = make_repeater(2)
print twice('word')
print twice(5)
打印结果是 wordword和10
lambda表达式不懂 求科普
* exec和eval
吐槽:js中听过这两个强大的东西
exec 执行存储在字符串或文件中的Python语言
exec 'print "aaa"' 输出 aaa
eval 计算存储在字符串中的有效表达式
eval ('2*3') 输出 6
* assert 用于声明某个条件是真的
当assert失败,引发一个AssertionError
assert也不是非常了解 求科普
* repr 取得对象的规范字符串表示 比如取得打印时的样子
反引号也有同样的作用`i`
一般的 有eval(repr(object))==object
同样这里的结果可以通过__repr__设置
附件是笔记 用notepad++写的 为了有语法高亮着色 保存成py文件了 txt一样看
分享到:
相关推荐
《简明Python教程》是一本自由图书,由Swaroop C H编写,旨在于介绍如何使用Python语言进行编程。该书以教材与指南的形式为入门者介绍Python语言。 Python安装 --------- 在开始学习Python之前,需要安装Python...
"简明Python教程"是为初学者设计的一份指导性资料,旨在帮助读者快速掌握Python的基本概念和编程技巧。 **Python基础内容** 1. **变量与数据类型**:Python支持多种数据类型,如整型(int)、浮点型(float)、...
简明 Python 教程 Python3 适合新手
《简明 Python 教程》byte-of-python-chinese-edition + pdf
简明 Python 教程 《简明 Python 教程》为 "A Byte of Python" 的唯一指定简体中文译本,版权 © 2005 沈洁元 本书依照 创作公用约定(署名-非派生作品-非商业用途) 发布。
"简明Python教程"旨在为新手提供一个清晰、全面的Python学习路径。这个教程覆盖了Python的基础知识,帮助读者快速掌握编程技能。 **基础语法** 在Python中,代码是通过缩进来组织的,这被称为"强制性缩进"。这种...
python简明教程笔记.pdf
本压缩包包含三本重要的Python学习资源,分别是《简明Python教程》、《深入Python2》和《深入Python3》。 《简明Python教程》是一本适合初学者入门的书籍,它通常会涵盖Python的基础知识,如变量、数据类型(包括...
### Python初学教程:《简明Python教程》 #### 知识点概述: 根据所提供的《简明Python教程》部分信息,我们可以归纳出一系列重要的Python基础知识和技术要点,这些内容非常适合Python初学者作为入门指南。 #### ...
`简明Python教程.chm`和`python标准库.chm`都是这种格式的文件,其中包含了丰富的文字、例子和可能的索引,用户可以通过内置的搜索功能快速查找所需信息。 通过这个压缩包,初学者不仅可以学习Python的基本概念,还...
简明python教程+源代码,英文原版名为《A Byte of Python》。它非常简明扼要地介绍了Python语言基础的各个方面。 适合群体: 仅仅临时使用Python的新手,非专业性地临时运用十来行简单代码就能自动化处理一些工作。 ...
对于初学者十分有用的简明Python教程,中文版,经典教程!PDF
《简明Python教程》是一本面向初学者的Python编程指南,旨在帮助读者快速掌握Python语言的基础知识和核心概念。这本教程提供了CHM和PDF两种格式,以满足不同用户的需求,无论是在电脑上查阅还是离线阅读都能方便进行...
"简明Python教程Html版"是一个专门为初学者设计的在线学习资源,旨在帮助读者快速掌握Python的基础知识。 1. **变量与数据类型** Python中的变量无需预声明,可以直接赋值。它支持多种数据类型,如整型(int)、...
3. **书籍**:“简明Python教程”是适合初学者的优秀教材,详细讲解了Python的基础知识。 4. **社区和论坛**:Stack Overflow、CSDN、知乎等平台上有大量的Python问题解答和经验分享。 通过系统学习并实践,你将...
简明 Python 教程 4.0 简明 Python 教程 4.0 简明 Python 教程 4.0
#### 一、关于《简明Python教程英文原版》 - **书籍定位**:《简明Python教程英文原版》是一本面向初学者的Python编程入门指南,适合完全没有编程基础的人群。 - **版本兼容性**:本书主要教授Python 3版本,同时也...