Python参考手册


表达式

重要的内置函数

-------------------------------------------------------------------------------------------------
函数                                   描述
-------------------------------------------------------------------------------------------------
abs(numbers)                           返回一个数的绝对值
apply(func[,arg[,kwargs]])             调用给定的函数,可选择提供参数
all(iterable)                          如果所有iterable的元素均为真则返回True,否则返回False
any(iterable)                          如果有任一iterable的元素为真则返回True,否则返回False
basestring()                           str和unicode抽象超类,取决于obj的布尔值
callable(obj)                          检查对象是否可调用
char(number)                           返回ASCII为给定的字符
classmethod(func)                      通过一个实例方法创建类的方法
cmp(x,y)                               比较x,y。xy:返回正数;x==y,返回0
complex(real[,imag])                   返回给定实部的复数
delattr([mapping-or-sequence])         从给定的对象中删除给定的属性
dict([mapping-or-sequence])            构造字典,可选择从键值对组成的列表构造。也可以用关键字参数调用
dir(object)                            列出给定对象的大多数特性
divmod(a,b)                            返回(a//b,a%b)
enumerate(iterable)                    对iterable所有项进行迭代
eval(string[,globals[,locals]])        对包含表达式的字符串进行计算。可选择给定的全局或局部作用域中进行
execfile(file[,globals[,locals]])      执行一个Python文件,可选在给定全局或者局部作用域中进行
file(filename[,mode[,bufsize]])        创建给定文件名的文件,可选择使用给定的模式和缓存区大小
float(object)                          将字符串或者数值转换为浮点型
frozenset([iterable])                  创建一个不可变集合,这意味着不能将它添加到其他集合中
getattr(object,name[,default])         返回给定对象中指定的特性的值,可选择给定默认值
globals()                              返回表示当前作用域的字典
hasattr(object,name)                   检查给定的对象是否有指定的属性
help([object])                         调用内置的帮助系统,或打印给定对象的帮助信息
hex(number)                            将数字转换为十六进制表示的字符串
id(object)                             返回给定对象的唯一ID
input([prompt])                        等同于eval(raw_input(prompt))
int(object[,radix])                    将字符串或者数字转换为整数
isinstance(object,classinfo)           检查给定的对象是否是给定的classinfo值的实例
                                       classinfo可以是类对象、类型对象或者类对象和类型对象的元祖
issubclass(class1,class2)              检查class1是否是class2的子类
iter(object[,sentinel])                返回一个迭代对象,可以用于迭代序列的object_iter()迭代器,或者提供一个sentinel,
                                       迭代器会在每次迭代中调用object,真到返回sentinel
len(object)                            返回给定对象的长度
list([object])                         构造一个列表
locals()                               返回表示当前局部作用域的字典
long(object[,radix])                   将字符串或者数字转换为长整形
map(function,seq1,...)                 创建给定函数func应用到列表seq中每一项时返回的值组成的列表
max(obj1[,obj2]...)                    如果obj1为非空序列,则返回最大的元素;否则返回所提供参数的最大值  
mix(obj1[,obj2]...)                    如果obj1为非空序列,则返回最小的元素;否则返回所提供参数的最小值       
object()                               返回所有新式类的基数Object的实例
oct(number)                            将整型转换为八进制表示的字符串
open(filename[,mode[,bufsize]])        file的别名,在打开文件的时候使用open而不是file
pow(x,y[,z])                           返回x的y次方,可选择模除z
ord(char)                              返回给定单字符的ASCII值
range([start,]stop[,step])             使用给定的起始值和结束值来创建数值范围
property(fget[,fset[,fdel[,doc]]])     通过一组访问器创建属性
raw_input([prompt])                    将用户输入的数据作为字符串返回,可选择使用给定的提示符prompt
reduce(func,seq[,initializer])         将序列的所有渐增应用给定的函数,使用累积的结果作为第一个参数
                                       所有的项作为第二个参数,可选择给定起始值
reload(module)                         重载入一个已经载入的模块并且将其返回
repr(object)                           返回表示对象的字符串,一般作为eval的参数使用
reversed(object)                       返回序列的反向迭代器
round(float[,n])                       将给定的浮点四舍五入,小数点后保留n位
set([iterable])                        返回从iterable生成的元素集合
setattr(object,name,value)             设定给定对象的指定属性的值为给定值
sorted(iterable[,cmp][,key][,reverse]) 从iterable中返回一个新排序后的列表,可选的参数和列表方法sort中的参数相同
staticmethod(func)                     从一个实例方法创建静态类方法
str(object)                            返回表示给定对象object的格式化好的字符串
sum(seq[,start])                       返回添加到可选参数start中的一系列数字的和
super(type[,obj/type])                 返回给定类型的超类
tuple([sequence])                      构造一个元祖,可选择使用sequence一样的项
type(object)                           返回给定对象的类型
type(name,bases,dict)                  使用给定的名称,基类和作用域返回一个新的类型对象
unichr(number)                         chr的Unicode版本
unicode(object[,encoding[,errors]])    返回给定对象的Unicode编码版本,可以给定编码方式和错误处理模式
vars([object])                         返回表示局部作用于的字典,或者对应给定对象特性的字典
xrange([start,]stop[,step])            类似于range,但是返回的对象使用较少的内存,而且只用于迭代
zip(seq1,...)                          返回元祖的列表,每个元祖包括一个给定序列中的项。返回长度以最小为准.







列表方法

-------------------------------------------------------------------------------------------------
方法                                   描述
-------------------------------------------------------------------------------------------------
L.append(obj)                          等同于L[len(L):len(L)] = [obj]
L.count(obj)                           返回L[i] == obj中索引为i的值
L.extend(obj)                          等同于L[len(L):len(L)] = seq
L.index(obj)                           返回L[i] == obj中最小的i,不存在会触发ValueError异常
L.insert(index,obj)                    index>0,等同于L[index:index]=[obj],index<0,插入列表最前面
L.pop([index])                         移除并且返回给定索引的项(默认为:-1即最后一项)  
L.remove(obj)                          等同于L[L.index(obj)]    
L.sort([cmp][,key][,reverse])          对L中的项进行原地排序。可以提供比较函数cmp
                                       创建用于排序的键的key函数和reverse标志进行自定义






字典方法

-------------------------------------------------------------------------------------------------
方法                                   描述
-------------------------------------------------------------------------------------------------
D.clear()                              移除D中的所有项
D.copy()                               返回D的副本
D.fromkeys(seq[,val])                  返回从seq中获得的键和被设置为val的值的字典。可做类方法调用
D.get(key[,default])                   如果D[key]存在,将其返回;否则返回给定的默认值None
D.has_key(key)                         检查D是否有给定键key
D.items()                              返回表示D项的(键,值)对列表
D.iteritems()                          从D.items()返回的(键,值)对中返回一个可迭代的对象
D.iterkeys()                           从D的键中返回一个可迭代对象
D.itervalues()                         从D的值中返回一个可迭代对象
D.keys()                               返回D键的列表
D.pop(key[,d])                         移除并且返回对应给定键key或给定的默认值D的值
D.popitem()                            从D中移除任意一项,并将其作为(键,值)对返回
D.setdefault(key[,default])            如果D[key]存在则将其返回;否则返回默认值None
D.update(other)                        将other中的每一项加入到D中。
D.values()                             返回D中值的列表





字符串方法

-------------------------------------------------------------------------------------------------
方法                                    描述
-------------------------------------------------------------------------------------------------
S.capitalize()                          返回首字母大写的字符串的副本
S.center(width[,fillchar])              返回一个长度为max(len(S),width),S居中,两侧fillchar填充
S.count(sub[,start[,end]])              计算子字符串sub的出现次数,可将搜索范围限制为S[start:end]
S.decode([encoding[,error]])            返回使用给定编码方式的字符串的解码版本,由error指定错误处理方式
S.endswith(suffix[start[,end]])         检查S是否以suffix结尾,可给定[start:end]来选择匹配的范围
S.expandtabs([tabsize])                 返回字符串的副本,其中tab字符会使用空格进行扩展,可选择tabsize
S.find(sun[,start[,end]])               返回子字符串sub的第一个索引,不存在则为-1,可选择搜索范围
S.index(sub[,start[,end]])              返回子字符串sub的第一个索引,不存在则引发ValueError异常.
S.isalnum()                             检查字符串是否由字母或数字字符组成
S.isalpha()                             检查字符串是否由字母字符组成
S.isdigit()                             检查字符串是否由数字字符组成
S.islower()                             检查字符串是否由小写字母组成
S.isspace()                             检查字符串是否由空格组成
S.istitle()                             检查字符串时候首字母大写
S.isupper()                             检查字符串是否由大写字母组成
S.join(sequence)                        返回其中sequence的字符串元素由S连接的字符串
S.ljust(width[,fillchar])               返回S副本左对齐的字符串,长度max(len(S),W),右侧fillchar填充
S.lower()                               返回所有字符串都为小写的副本
S.lstrip([char])                        向左移除所有char,默认移除(空格,tab,\n)
S.partition(seq)                        在字符串中搜索seq并返回
S.replace(old,new[,max])                将new替换olad,最多可替换max次
S.rfind(sub[,start[,end]])              返回sub所在的最后一个索引,不存在则为-1,可定搜索范围S[start:end]
S.rindex(sub[,start[,end]])             返回sub所在的最后一个索引,不存在则会引发ValueError异常。
S.rjust(width[,fillchar])               返回S副本右对齐的字符串,长度max(len(S),W),左侧fillchar填充
S.rpartition(seq)                       同Partition,但从右侧开始查找
S.rstip([char])                         向右移除所有char,默认移除(空格,tab,\n)
S.rsplit(sep[,maxsplit])                同split,但是使用maxsplit时是从右往左进行计数
S.split(sep[,maxsplit])                 使用sep做为分割符,可使用maxsplit指定最大切分数
S.zfill(width)                          在S的左侧以0填充width个字符
S.upper()                               返回S的副本,所有字符大写
S.splitlines([keepends])                返回S中所有行的列表,可选择是否包括换行符
S.startswith(prefix[,start[,end]])      检查S是否以prefix开始,可用[start,end]来定义范围
S.strip([chars])                        移除所有字符串中含chars的字符,默认移除(空格,tab,\n)
S.swapcase()                            返回S的副本,所有大小写交换
S.title()                               返回S的副本,所有单词以大写字母开头
S.translate(table[,deletechars])        返回S的副本,所有字符都使用table进行的转换,
                                        可选择删除出现在deletechars中的所有字符






语句

简单语句

简单语句由逻辑上的一行组成


表达式语句

表达式也可以是语句。如果表达式是函数调用或者文档字符串的话尤其如此
"This module contains SPAM-related functions"


断言语句

用于检查条件是否为真,如假的话会引发AssertionError的异常.
#为真:
>>> age = 20
>>> assert age >= 12, 'The age under 12 is not allowed!'
#为假:
>>> assert age >= 40, 'The age must over 40!'
Traceback (most recent call last):
  File "", line 1, in 
AssertionError: The age must over 40!


赋值语句

赋值语句将变量绑定到值上。多个变量可以通过队列解包的方式赋值,复制也可以是连锁的。
>>> name, age = 'Jerry', 38   # 序列解包
>>> x = y = z = 42            # 链式赋值
>>> x = 42                    # 简单赋值    

增量赋值语句

赋值也可以通过运算符来扩充。运算符可以应用到已有变量值和新值,然后变量会被重新绑定到结果上。
>>> x *= 2                    # x = x * 2
>>> x += 5                    # x = x + 5


pass语句

无操作,啥事不用干。可做占位符,或不需要做任何事情的语句
try:
    x.name
except AttributeError:
    pass
else:
    print 'Hello', x.name

del语句

用于解除变量和特性的绑定,并且移除数据结构中的某部分。但不能用于直接删除值,因为值只能通过垃圾收集进行删除
del x                        # 解除变量绑定
del seq[4]                   # 删除序列元素
del seq[4:]                  # 删除序列切片
del map['foo']               # 删除字典中的映射项


print语句

该语句将一个或多值写入到给定的流中,默认sys.stdout.除非以逗号结束,否则会增加一个换行符.
>>> print 'Hello,World!'      # 将'Hello,World!\n'写入到sys.stdout中
>>> print 1, 2, 3             # 将'1 2 3\n'写入到sys.stdout中
>>> print >> somefile, 'xyz'  # 将'xyz'写入到somefile中
>>> print 42,                 # 将'42'写入到sys.stdout中


return语句

return语句会终止函数的运行,并且返回值。如果没有提供返回值,则返回None.

>>>return                     # 从当前函数中返回None
>>>return 42                  # 从当前函数中返回42
>>>return 1, 2, 3             # 从当前函数中返回(1,2,3)

yield语句

yield语句会暂时终止生成器的执行并生成一个值。生成器是迭代器的一种形式,可以和其他对象一起用于for循环.

yielda 42                     # 从当前函数中返回42

raise语句

raise语句引发一个异常。可以不用参数进行调用(在except子句内,重引发当前捕捉到的异常)

也可以子类化Exception并且提供可选的参数(在这种情况下,会构造一个实例),或是使用Exception子类的一个实例

raise                         # 只能用于except子句中
raise IndexError
raise IndexError, 'index out of bounds'
raise IndexError('index out of bounds')

break语句

break语句会结束当前的for或while循环,并且会立即执行循环后的语句

while True:
    line = file.readline()
    if not line:
        break
    print line

continue语句

contineu语句会终止当前循环中的迭代,但是并不会完全终止循环,而是从下一个迭代过程的开始处继续执行

while True:
    line = file.readline()
    if not line: break
    if line.isspace(): continue
    print line

import语句

import语句用于从外部模块中导入名称(绑定到函数、类、或者变量)。

这也包括from __future__ import * 语句。这个语句用于导入在未来的Python版本中成为标准的特性。

import math
from math import sqrt
from math import sqrt as squareroot
from math import *

global语句

global语句用于标记一个变量为全局变量。它可以在函数内,以允许函数体内的语句重新绑定全局变量。

使用global语句一般来说被认为是不好的编程风格,能避免的话尽量避免。

count = 1
def inc():
    global count
    count += 1

exec语句

exec语句用于执行包含Python语句的字符串,可选择给定的全局和局部命名空间(字典)。

exec 'print "Hello,World!"'
exec 'x = 2' in myglobals, mylocals   # mygolobals和mylocals都是字典

lambda语句

Python中函数的一种,无变量,无return,简单方便.

lambda x,y: x ** 2 + y, (1,2)         # 冒号分割,前面变量,后面return值

复合语句

复合语句包括其他语句块

if语句

if语句用于条件执行,可以包括elif和else语句

if x < 10:
    print 'Less than 10'
elif 10 <= x <= 20:
    print 'Less than 20'
else:
    print 'More than 20'

while语句

while语句用于在给定的条件为真的时候重复执行。它可以包括else子句(在循环正常结束,在没有break或者return语句的时候执行)

x = 1
while x < 100:
    x *= 2
print x

for语句

for语句用于对序列或者其他可迭代对象(对象有返回迭代器的__iter__方法)的元素重复执行循环。

它可以包括一个else子句(在循环正常结束,没有任何break或者return语句的时候执行)

for i in range(10, 0, -1):
    print i
print 'Ignition!'

try语句

try语句用于封闭一段可能发生一个或者多个异常的代码,让程序可以捕捉这些异常,并且在捕捉到异常的时候进行异常处理。

try语句可以包含多个except子句来处理异常,以及多个finally子句(无论如何都会执行的语句,用于清理)

try:
    1/0
except ZeroDivisionError:
    print "Can't divide anything by zero."
finally:
    print 'Done trying to calculate 1/0'

with语句

with语句使用所谓的上下文管理器对代码块进行包装,允许上下文管理器实现一些设置和清理操作。

例如:文件可以作为上下文管理器使用,它们可以关闭自身作为清理的一部分。

NOTE:在PYTHON2.5中,需要使用from __future__ import with_statement进行with语句的导入

with open('NOTE.txt') as myfile:
    dosomething(myfile)
#文件在此处关闭


函数定义

函数定义用于创建函数对象,并且绑定全局或者局部变量到函数对象上.

def double(x):
    return x * 2

类定义

类定义用于创建类对象,并且绑定全局或局部变量到类对象上

class Doubler:
    def __init__(self,value):
        self.value = value
    def double(self):
        self.value *= 2

用于记录开始使用PYTHON编程的时候,可以用于更新记忆的方便的“备忘录”,完整的参考手册,请参考Python的标准文档

https://www.python.org/doc/




相关内容

    暂无相关文章

评论关闭