charper 2nd quickly in
输入输出、注释、操作符、变量与赋值、python数据类型
缩进、循环与条件
文件、错误、函数、类 、模块
语句和表达式(函数和算术表达式)注意二者的区别:
语句:输出语句 print "hello world" 带关键字,告诉解释器要做(print)什么,
表达式:算术表达式(1+1) 比较表达式(1>1)
str = "test"
print str
test
str
‘test‘
print 语句调用的是str函数
交互式解释器调用的是repr() 显示对象
下划线在解释器中表示最后一个表达式的值
print "str :%s num:%d"%("test",1)
%s 会用一个字符串来替换
%d 会用一个整数来替换
%f 表示由浮点数替换
print 支持重定向到文件
log = open("test,log","a")
print >> log,"cdcdcdcdcdcd"
log.close()
这里的执行类似于:shell 中的重定向,执行这些语句后,test.log 文件中就会加上cdcdc 这些字符串,要注意文件打开的方式
获取用户输入
raw_input("please input a str") 返回string 可以用int(返回值) 进行转换
input("please input an interger") 返回int
要确定函数内部是否可以输出,方便模块的复用
注释的使用:单行注释:行首使用# 进行注释 ;
第二种方式如上所示,所说的文档注释,可以通过:test.__doc__ 进行访问
操作符:
/ 如果两个数都是整形的话,会取比商商小的最大整数(地板除)
// 浮点数除法
比较运算符:返回布尔值
下面的也是合法的:3<4<5
and or not
变量和赋值
python 是区分大小写的
python不支持自增 和自减操作,python会将-(-n)表示为n +(+n)表示为n
数字:
int long bool float complex
python的长整型受限于虚拟内存的大小
True 1:False 0
十进制浮点型:
decimal import decimal
字符串:
单引号、双引号、三引号:
索引操作符:[] 切片操作符[:]
第一个字符的索引为0.最后一个字符的索引为-1
切片的时候包含前面的一个,不会包含后面的一个
但是若后一个为空的话,则包含
print str[:1] 第0个元素
print str[1:] 第二个元素以及以后的所有元素
列表和元组
区别:列表:[] 元素个数和元素的值可变
元组:() 不可以改变,但内容可以改变 可以看作只读的列表
字典 (映射数据类型)
几乎所有的python对象都可以作为key,但是一般是数字或者字符串
非0 也是真
def test(x,y):
if x > y:
print "x>y"
elif x==y:
print "x==y"
else:
print "x<y"
while 的使用
def test1(x):
while x > 0:
print x
x -= 1
for:
for i in range(10):
print i,
for 接受可迭代的对象
print "we will together greeting to %s and say %s" %\
(name,(greeting+‘ ‘)*3)
for i in range(1,100,2):
print i,
for i in range(len(str)):
print i,str[i]
//todo:--------------------
for i,ch in enumerate(str):
print ch,"(%d)"%i
列表解析:[] 包括的
文件和内建函数
r 读取(默认)
w write
a append
+ read write
b 二进制访问
对于比较大的文件,一次读取一行,否则会比较占用内存,对于一般大小的文件,则可以一次读取整个文件,
错误和异常:
def test():
try:
file=open("cdcdcdcd")
except IOError,e:
print e
也可以通过raised故意引发一个异常
def test():
try:
raise
except:
print "except happened"
>>> test()
except happened
函数
如果函数中没有return ,就会自动返回none对象
python是通过引用调用的,所以对于可变参数的改变,会影响到原始对象,而对于不可变对象而言,它的行为类似与传值调用
默认参数
类的使用
pep python增强提案(python enhandlement proposal)
实用函数:
dir help int len(返回对象的长度) open range() raw_input() str(obj) 将一个对象转换为字符串
type(obj) 返回对象的类型,返回值本身是一个type对象
python 核心编程摘要3