range语法与列表解析

来源:互联网 发布:linux中help的用法 编辑:程序博客网 时间:2024/05/29 04:44
一、range
  1、完整语法
  range(start, end, step = 1)
  说明:range() 会返回一个包含所有 K 的列表,这里start <=k
 Python Code 
1
2
3
4
5
6
>>> range(2193)
[258111417]
>>> range(37)
[3456]
>>> range(5)
[01234]

  2、xrange
  说明:类似于range(),适用于当你有一个很大的范围列表时,xrange()特别适合。因为它不会在内存里创建列表的完整拷贝,它只被用在for循环中,在for循环外没有意义。

二、列表解析
  1、语法:[exprfor iter_var in iterable]
 一般使用如下的来替代
 Python Code 
1
2
>>> [x**2 for in range(6)]
[01491625]
  
 2、扩展版本的语法:[expr for iter_var in iterableif cond_expr]
 1>一般挑选列表中的奇数需要用到 filter() 和 lambda
 Python Code 
1
2
3
>>> seq [111099101082371222]
>>> filter(lambda x: x%2seq)
[1199237]
 
  2>现在可以不使用上述的函数就可以实现
 Python Code 
1
2
>>> [x for in seq if 2]
[1199237]

  举例:
 1、矩阵样例
 Python Code 
1
2
>>> [(x+1y+1for in range(3for in range(5)]
[(11), (12), (13), (14), (15), (21), (22), (23), (24), (25), (31), (32), (33), (34), (35)]
0 0
原创粉丝点击