[python学习篇][书籍学习][python standrad library][内建函数]之[list,open,len,pow,range,

Python 解释器内置了一些函数,它们总是可用的。这里将它们按字母表顺序列出。

  Built-in Functions  
abs() divmod() input() open() staticmethod()
all() enumerate() int() ord() str()
any() eval() isinstance() pow() sum()
basestring() execfile() issubclass() print() super()
bin() file() iter() property() tuple()
bool() filter() len() range() type()
bytearray() float() list() raw_input() unichr()
callable() format() locals() reduce() unicode()
chr() frozenset() long() reload() vars()
classmethod() getattr() map() repr() xrange()
cmp() globals() max() reversed() zip()
compile() hasattr() memoryview() round() __import__()
complex() hash() min() set() apply()
delattr() help() next() setattr() buffer()
dict() hex() object() slice() coerce()
dir() id() oct() sorted() intern()

len(s)

返回对象的长度(元素的个数)。参数可以是序列(如字符串,字节,元组,列表或者范围)或者集合(如字典,集合或者固定集合)。

list([iterable])

返回一个列表,其元素来自于iterable(保持相同的值和顺序)。iterable可以是个序列,支持迭代的容器,或者迭代器对象。如果iterable已经是个列表,返回其拷贝,类似于iterable[:]例如,list('abc')返回['a', 'b', 'c']list( (1, 2, 3) )返回[1, 2, 3]如果没有参数,返回一个新的空的列表,[]

>>> list(['a','b','c'])
['a', 'b', 'c']
>>> list(1,2,3)

Traceback (most recent call last):
  File "<pyshell#55>", line 1, in <module>
    list(1,2,3)
TypeError: list() takes at most 1 argument (3 given)
>>> list('abc')
['a', 'b', 'c']
>>> list((1,2,3))
[1, 2, 3]
>>> list()
[]
>>> 

open(name[, mode[, buffering]])

打开一个文件,返回一个file类型的对象,file类型描述于File Objects章节。如果文件不能打开,抛出IOError当要打开一个文件,优先使用open(),而不是直接调用file构造函数。

头两个参数类似于stdio‘s fopen()的参数:name是要打开的文件的名字,mode是个指示如何打开文件的字符串。

mode的常用值包括:'r'读文件;'w'写文件(如果文件存在则截断之);'a' 附加(在 某些Unix系统上意味着所有的写操作附加到文件的末尾,不管当前的写位置)。如果没有mode,默认是'r'默认使用文本模式,它会在写文件时将'\n'字符转化成平台特定的字符,在读文件时又转回来因此在打开二进制文件的时候,要以二进制模式打开文件,把'b'添加到mode值,这样可以增强可移植性。(在不区分二进制文件和文本文件的系统上,附加'b'仍然时有用的,它可以起到文档的目的。)参见下文以得到mode更多的可能的值。

可选的buffering参数指明了文件需要的缓冲大小:0意味着无缓冲;1意味着行缓冲;其它正值表示使用参数大小的缓冲(大概值,以字节为单位)。负的buffering意味着使用系统的默认值,一般来说,对于tty设备,它是行缓冲;对于其它文件,它是全缓冲。如果没有改参数,使用系统的默认值。[2]

模式'r+''w+''a+'打开文件以便更新(同时读写)。注意'w+'会截断文件。在区分文本文件和二进制文件的系统上,在模式中附加'b'会以二进制模式打开文件;在不区分的系统上,添加'b'没有效果。

除了标准的fopen()模式值,mode可以是'U'或者'rU'构建Python时一般会添加universal newlines(统一新行)支持;'U'会以文本模式打开文件,但是行可以以以下字符结束:'\n'(Unix行结束符),'\r'(Macintosh惯例),或者'\r\n'(Windows惯例)。Python程序会认为它们都是'\n'如果构建Python时没有添加统一新行的支持,mode 'U'和普通文本模式一样。注意,这样打开的文件对象有一个叫newlines的属性,它的值是None(没有发现新行),'\n''\r''\r\n',或者是包含所有已发现的新行字符的元组。

Python要求模式字符串在去除'U'后以'r''w'或者'a'开头。

Python提供了许多文件处理模块,包括fileinputosos.pathtempfileshutil

open 打开文件有两种模式; 文本模式和二进制模式,默认是文本模式,在打开二进制文件时一定要以b模式打开文件(rb)

 

 

pow(x, y[, z])

返回x 的 y次幂; 如果 z 提供的时候,, 返回 x 的 y 次幂,然后对  z 取模。(这样比 pow(x, y) z) 更高效。两个参数的形式 pow(x, y) 与使用 操作符: x**y 是等价的。

range(stop)range(start, stop[, step])

这是一个创建包含数列的列表的通用函数。它最常用于for循环。参数必须为普通的整数。如果step参数省略,则默认为1如果start参数省略,则默认为0该函数的完整形式返回一个整数列表[start, start step, start step,...]如果step为正,则最后一个元素start step最大且小于stop;如果step为负,则最后一个元素start step最小且大于stop。step必须不能为零(否则会引发ValueError)。示例:

>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)
[0, 3, 6, 9]
>>> range(0, -10, -1)
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]

 

raw_input([prompt])

如果有prompt参数,则将它输出到标准输出且不带换行。该函数然后从标准输入读取一行,将它转换成一个字符串(去掉一个末尾的换行符),然后返回它。当读到EOF时,则引发EOFError。 示例:

>>> s = raw_input('---->')
---->abd
>>> print s
abd
>>> 

 

 
posted @ 2017-07-23 16:54  liuzhipenglove  阅读(237)  评论(0编辑  收藏  举报