Python循环加强版——列表生成式
记得我们在其他语言中都学到过循环,尤其是对for循环是再熟悉不过了
比如我有一个数组 a[10]={1,2,3,4,5,6,7,8,9,10}
下面需要依次循环打印出来,C语言首先想到的是
for(i=0;i<10;i++ )
{
print a[i]
}
但是在Python中,我们可以很方便的写出这个循环
def TestFun():
a = [1,2,3,4,5,6,7,8,9,10]
for value in a:
print value TestFun()
如果现在我们的a不是一个数组呢?而是一个字符串,需要依次取出字符呢?
恐怕在其他语言中就不那么简单了吧,但是在python中还是很小case的一件事
def TestFun():
a ="ABCDEFG"
for value in a:
print value TestFun()
不会吧?不相信/?
结果就是这样:

下面介绍一个函数,range()
比如我们要生成一个list, a=[1,2,3,4,5,6,7,8],这可以写,但是我们要从1到一百万呢?可以很简单的用这个函数来解决
rang(1,9), 注意是包括左边,不包括右边(左闭又开)[1,9):代表1-8八个数
好了,来试试看:

现在我要生成【1*1,2*2,3*3,4*4......】怎么办呢?
这还不好解决嘛,用循环!!!
def TestFun():
l = []
for x in range(1,9):
l.append(x*x)
return l l = TestFun()
for value in l:
print value
发现用循环还是不够爽,来一种洋气的写法:

这里的意思就是呢,第一个数x*x就是我要返回的数,让x从1到8依次循环
我们还可以来此双重循环,也可以这样简便的来写
def TestFun():
l=[m+n for m in "AB" for n in "CD" ]
return l l = TestFun()
for value in l:
print value
结果:

Python循环加强版——列表生成式的更多相关文章
- python学习笔记——列表生成式与生成器
1.列表生成式(List Comprehensions) python中,列表生成式是用来创建列表的,相较于用循环实现更为简洁.举个例子,生成[1*1, 2*2, ... , 10*10],循环用三行 ...
- python 迭代 及列表生成式
什么是迭代 在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration). 在Python中,迭代是通过 for ...
- python循环删除列表元素常见错误与正确方法
python循环删除列表元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me 常见错误 常见错误一:使用固定长度循环删除列表元素 # 使用固定长度循环pop方法删除列表元素 num_list_ ...
- Python中的列表生成式和多层表达式
Python中的列表生成式和多层表达式 如何生成[1x1, 2x2, 3x3, ..., 10x10]的列表? L=[]; ,): L.append(x*x) print L print (" ...
- (python函数02)列表生成式
(python函数02)列表生成式 示例代码 num = [i for i in range(1, 10)] print(num) num = [i for i in range(1, 10) ...
- python基础:列表生成式和生成器
列表生成式(List Comprehension) 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 举个例子,要生成 list ...
- Python自学笔记-列表生成式(来自廖雪峰的官网Python3)
感觉廖雪峰的官网http://www.liaoxuefeng.com/里面的教程不错,所以学习一下,把需要复习的摘抄一下. 以下内容主要为了自己复习用,详细内容请登录廖雪峰的官网查看. 列表生成式 列 ...
- python中的列表生成式
列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 举个例子,要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, ...
- Python高级教程-列表生成式
List Comprehensions(列表生成式) 列表生成式,是Python内置的非常简单却强大的可以用来创建list的生成式. 例如,要生成list:[1,2,3,4,5,6,7,8,9,10] ...
随机推荐
- 关于JS正则表达式的一篇文章(转载)
原文:http://www.cnblogs.com/xujh/archive/2008/08/21/1273525.html <input onkeypress="return ...
- vesamenu.c32:not a COM32R image报错解决方案
今天用U盘刻录安装Linux Mint 的时候,一直出现 vesamenu.c32:not a COM32R image这个报错,查了很久,原因好像是电脑是老电脑的原因.处理的办法很简单,只需要输入l ...
- Jedis连接redis的一些基本操作
Jedis其实就是redis的一个连接方式 需要的jar包:
- 新创建的maven项目,显示的jdk版本与使用的不一致
解决:是在安装的maven中的setting.xml配置文件中添加 在setting.xml配置文件中的<profiles></profiles>这个元素中加以下代码 如果加上 ...
- eclipse java 注释模板配置详解
设置注释模板的入口: Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元 ...
- bzoj 2653 middle(主席树)
题面:https://vjudge.net/problem/HYSBZ-2653 博客:https://blog.csdn.net/litble/article/details/78984846 这个 ...
- 数据库之_CRUD
CRUD是指在做计算处理时的增加(Create).读取查询(Retrieve).更新(Update)和删除(Delete)几个单词的首字母简写.主要被用在描述软件系统中DataBase或者持久层的基本 ...
- Tensorflow fetch和feed
import tensorflow as tf #Fetch input1 = tf.constant(1.0)input2 = tf.constant(3.0)input3 = tf.constan ...
- UIScrollView 实现比例缩放
#import "RootViewController.h" @interface RootViewController ()<UIScrollViewDelegate> ...
- HDOJ 4802 GPA
Problem Description In college, a student may take several courses. for each course i, he earns a ce ...