一:
range()
与
xrange()
的比较:
在
Python
中,
range
和
xrange
均可以用来做迭代的范围,不过
range
返回的是
list
,而
xrange
则返回一个
xrange object
。
如下:
>>> type(range(10))
>>> type(xrange(10))
>>>
xrange()
比
range()
效率更高:
因为
range
返回的是一个
list
对象,
然后再对
list
对象进行遍历,
而
xrange
返回的是
xrange
对象,每次迭代才返回本次迭代的结果。
比如:
for x in range(10000):
will generate a list of ten thousand elements, and will then loop through each of them in turn
for x in xrange(10000):
will genarate ten thousand integers one by one, passing each to the variable x in turn.
二:内置函数:
ord()
与
chr()
可以实现一个字符与
ascii
之间的转换,比如:
>>> ord('a')
97
>>> chr(97)
'a'
>>>
例如将英文字母放入列表中:
>>> list = []
>>> for i in xrange(ord('a'),ord('z')+1,1):
...
list.extend(chr(i))
...
>>>
注意:
chr()
与
str()
的区别:例如以下代码:
>>> chr(97)
'a'
>>> str(97)
'97'
将一个字符串转换为对应的
ascii
码值,
map
比如:
>>> map(ord,"abcde")
[97, 98, 99, 100, 101]