#-*- coding:UTF-8 -*-

squares=[]
for x in range(10):
squares.append(x**2) print squares
#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
#等价于
squares=[x**2 for x in range(10)]
print squares
#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] combs=[]
for x in [1,2,3]:
for y in [3,1,4]:
if x!=y:
combs.append((x,y))
print combs
#等价于:
combs=[(x,y) for x in [1,2,3] for y in [3,1,4] if x!=y]
print combs
#[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)] vec=[-4,-2,0,2,4]
print [x*2 for x in vec]
#[-8, -4, 0, 4, 8] print 30*'*','print [x for x in vec if x>=0]',30*'*'
print [x for x in vec if x>=0]
#[0, 2, 4] print [abs(x) for x in vec]
#[4, 2, 0, 2, 4] freshfruit=[' banana',' apple ','loganberry ','passion fruit ']
#strip() 去除字符串首尾空格
print [weapon.strip() for weapon in freshfruit]
#['banana', 'apple', 'loganberry', 'passion fruit'] print 30*'*',"[(x,x**2) for x in range(6)]",30*'*'
print [(x,x**2) for x in range(6)]
#[(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)] vec=[[1,2,3],[4,5,6],[7,8,9]]
print [num for elem in vec for num in elem]
#[1, 2, 3, 4, 5, 6, 7, 8, 9] matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
#list中的每个元素都是list,将list中的每个list元素中的元素按照索引组合成一个新的list
print [[row[i] for row in matrix] for i in range(4)]
#[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]] transposed=[]
for i in range(4):
transposed.append([row[i] for row in matrix]) print transposed
#[[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]] #等价于:
transposed=[]
for i in range(4):
transposed_row=[]
for row in matrix:
transposed_row.append(row[i])
transposed.append(transposed_row)
print transposed #等价于zip(*matrix)
print zip(*matrix)
#[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]

此外,map()也可以返回list,map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
#lambda表示匿名函数,冒号前面的x表示函数参数,冒号后面是表达式,匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果

squares=map(lambda x:x**2,range(10))
print squares #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

python 使用循环生成list的更多相关文章

  1. Python for循环生成列表

    一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句: featList = [example[i] for example in dataSet] classList = [ ...

  2. python基础-循环

    循环 循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直 ...

  3. python脚本批量生成数据

    在平时的工作中,经常会遇到造数据,特别是性能测试的时候更是需要大量的数据.如果一条条的插入数据库或者一条条的创建数据,效率未免有点低.如何快速的造大量的测试数据呢?在不熟悉存储过程的情况下,今天给大家 ...

  4. Python学习-7.Python的循环语句-for语句

    Python中循环可以使用for语句来实现 list = ['Tom','Lucy','Mary'] for name in list: print(name) 则将会依次输出Tom Lucy Mar ...

  5. Python列表的生成

    要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],我们可以用range(1, 11): >>> range(1, 11) [1, 2, 3, 4, 5, ...

  6. Python的循环正确的操作使用方法详解

    要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表达式就 ...

  7. python for循环及常用函数

    python for循环 格式: for iterating_var in sequence: statements(s) ###################################### ...

  8. python 6 循环

    循环 要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 6 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+10000,直接写表 ...

  9. python实现树莓派生成并识别二维码

    python实现树莓派生成并识别二维码 参考来源:http://blog.csdn.net/Burgess_Liu/article/details/40397803 设备及环境 树莓派2代 官方系统R ...

随机推荐

  1. [notes] some code tips

    genericizing-codehtml, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin ...

  2. <[成长股基本面]【怎样选择成长股】>读书笔记

    书在这里 投资想赚大钱,必须有耐性 这家公司的产品或服务有没有充分的市场潜力,至少几年内营业额能否大幅成长? 为了进一步提高总体销售水平,发现新的产品增长点,管理层是不是决心继续开发新产品或新工艺? ...

  3. AT24Cxx(EEPROM)子系统

    1.配置内核 打开I2C功能: 打开杂项设备,该选项打开后,EEPROM也就打开了. 2. 修改代码 修改文件: linux/arch/arm/mach-s3c2440/mach-smdk2440.c ...

  4. git——从远程库克隆

    从远程库克隆 阅读: 248434 上次我们讲了先有本地库,后有远程库的时候,如何关联远程库. 现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆. 首先,登陆GitHub,创建 ...

  5. Android训练课程(Android Training) - 添加活动栏(使用action bar)

    2014-10-28 张云飞VIR 翻译自:https://developer.android.com/training/basics/actionbar/index.html 添加活动栏(Addin ...

  6. 【嵌入式】——arm裸机开发 step by step 之 按键控制 LED 和 蜂鸣器

    一.arm-9 TQ2440 key.h #ifndef __KEY_H__ #define __KEY_H__ #define GPFCON (*(volatile unsigned long *) ...

  7. 安卓程序代写 网上程序代写[原]BluetoothAdapter解析

    这篇文章将会详细解析BluetoothAdapter的详细api, 包括隐藏方法, 每个常量含义. 一 BluetoothAdapter简介 1.继承关系 该类仅继承了Object类; 2.该类作用 ...

  8. share a story on OSPF & BGP

    IP掌门把两个得意门生——BGP和OSPF叫到跟前,询问他们的修炼心得,以选择弟子传授大内心法——MPLS VPN.OSPF说:“小徒苦心研读路由原理,技术资料上万页,网络在我的围护下无环路,触发更新 ...

  9. pymysql.err.InternalError: (1054, "Unknown column 'None' in 'field list'")

    错误提示: Traceback (most recent call last): File "D:/projectwc/test/dd.py", line 43, in <m ...

  10. Servlet输出PDF文档方法

    概述 Java Servlet 编程可以很方便地将 HTML 文件发送到客户端的 Web 浏览器.然而许多站点还允许访问非 HTML 格式的文档,包括 Adobe PDF.Microsoft Word ...