`
_wyh
  • 浏览: 59521 次
社区版块
存档分类
最新评论

python列表生成式用法

阅读更多

列表生成式:List Comprehensions,是python中非常非常简单但却最常用的一个功能。

根据名字就能知道,列表生成式所返回的应该是list类型,它能用最简单最易懂的写法生成所需要的列表。

例:我需要得到1-100这个list的所有数的平方所组成的一个list。此时可以用for循环:

a = []
for value in range(1, 101):
    a.append(value * value)

print(a)

  此时得到的a就是1-100中每个数的平方所组成的数组。这个方法很简单,但是使用列表生成式更简单。

a = [value * value for value in range(1,101)]
print(a)

  得到的a与上一个方法中的a一摸一样。

 

  在 a = [value * value for value in range(1,101)] 中,value * value是一个表达式,value这个数来源于表达式后面的for循环,for循环每循环一次,就计算一次表达式,最后将for循环中每次循环的数的计算结果都保存在一个列表中。最后赋值给a。

 

 

在列表生成式中,也可以使用多次循环。比如:

 

a = [x * y for x in range(1,3) for y in range(3,5)]
print(a)

 生成结果为:

[3, 4, 6, 8]

 range(1,3)为[1, 2], range(3,5)为[3,4],x来自range(1,3),y来自range(3,5)

 结果为:1*3, 1*4, 2*3, 2*4

 

 此外,还可以在列表生成式中增加条件判断:

a = [value * value for value in range(1, 11) if value % 2 == 0]
print(a)

#结果为:
[4, 16, 36, 64, 100]

  在for循环后面给value值增加条件选择。此例子是计算1-10中偶数的平方

 

 

 

0
0
分享到:
评论

相关推荐

    Python列表推导式与生成器用法分析

    本文实例讲述了Python列表推导式与生成器用法。分享给大家供大家参考,具体如下: 1. 先看两个列表推导式 def t1(): func1 = [lambda x: x*i for i in range(10)] result1 = [f1(2) for f1 in func1] print ...

    Python列表生成器的循环技巧分享

    列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。... 您可能感兴趣的文章:Python列表推导式与生成器用法分析Python3中的列表生成式、生成器与迭代器实例详解pyt

    Python列表生成式与生成器操作示例

    主要介绍了Python列表生成式与生成器操作,结合实例形式分析了Python列表生成式与生成器的功能、使用方法及相关操作技巧,需要的朋友可以参考下

    通过代码实例展示Python中列表生成式的用法

    这是一个简单的例子,但是使用列表生成式可以更简洁地创建这个列表。 squares = [x**2 for x in range(10)] 这个最简单的列表生成式由方括号开始,方括号内部先是一个表达式,其后跟着一个for语句。列表生成式...

    Python字典生成式、集合生成式、生成器用法实例分析

    跟列表生成式一样,字典生成式用来快速生成字典,不同的是,字典需要两个值 #d = {key: value for (key, value) in iterable} d1 = {'x': 1, 'y': 2, 'z': 3} d2 = {k: v for (k, v) in d1.items()} print(d2) ...

    Python列表推导式与生成器表达式用法示例

    主要介绍了Python列表推导式与生成器表达式用法,简单描述了Python列表推导式与生成器表达式的概念、功能,并结合具体实例形式分析了Python列表推导式与生成器表达式简单使用技巧,需要的朋友可以参考下

    python生成器推导式用法简单示例

    本文实例讲述了python生成器推导式用法。分享给大家供大家参考,具体如下: 1.生成器推导式是继列表推导式后的有一中python推导式,他比列表推导式速度更快,占用的内存也更少。 2.使用生成器对象时,可以根据需要将...

    python开发入门——列表生成式

    本文主要介绍Python中列表生成式的基本知识和使用 生成列表 要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],我们可以用range(1, 11): >>> range(1, 11) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 但如果要生成[1×1, 2×2...

    python生成器用法实例详解

    本文实例讲述了python生成器用法。分享给大家供大家参考,具体如下: 1. 生成器 利用迭代器,我们可以在每次迭代获取数据...第一种方法很简单,只要把一个列表生成式的 [ ] 改成 ( ) In [15]: L = [ x*2 for x in r

    Python3中的列表生成式、生成器与迭代器实例详解

    主要介绍了Python3中的列表生成式、生成器与迭代器,结合实例形式详细分析了Python3列表生成式、生成器与迭代器相关概念、功能、使用方法及操作注意事项,需要的朋友可以参考下

    Python列表推导式、字典推导式与集合推导式用法实例分析

    本文实例讲述了Python列表推导式、字典推导式与集合推导式用法。分享给大家供大家参考,具体如下: 推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据...

    Python生成器generator用法示例

    l = [x * 2 for x in range(10)] # 列表生成式 g = (x * 2 for x in range(10)) print(l,g) # l打印的是一个列表,g则是一个generator的内存地址 一次性打印获取generator的所有元素: for index in g: print...

    彻底搞懂Python生成器推导式

    生成器推导式(generator expression)的用法与列表推导式非常相似,在形式上生成器推导式使用圆括号(parentheses)作为定界符,而不是列表推导式所使用的方括号(square brackets)。 与列表推导式最大的不同是,...

    在Python中使用列表生成式的教程

    列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 举个例子,要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用range(1, 11): >>> range(1, 11) [1, 2, 3, 4, 5, 6, ...

    Python 基础题 输入输出列表 生成随机数 求和 文件读写 main函数式编程

    Python 基础题 输入输出列表 生成随机数 求和 文件读写 main函数式编程 if else for random模块使用方法

    Python中的列表生成式与生成器学习教程

    列表生成式 即创建列表的方式,最笨的方法就是写循环逐个生成,前面也介绍过可以使用range()函数来生成,不过只能生成线性列表,下面看看更为高级的生成方式: >>> [x * x for x in range(1, 11)] [1, 4, 9, 16, 25...

    python3列表推导式

    列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列。...列表推导式可以使用复杂表

Global site tag (gtag.js) - Google Analytics