请问Python中 for in是怎么用的

作者&投稿:福巧 (若有异议请与网页底部的电邮联系)
python中的for in是什么意思~

python中的for in是表示循环的关键字,for...in循环,依次把list或tuple中的每个元素迭代出来,例如:
1、names = ['Michael', 'Bob', 'Tracy']
for name in names:print name
2、bag = [1, 2, 3, 4, 5]
for i in range(len(bag)):
print(bag[i])
循环的意义在于,可以用电脑对不同的对象执行相同的命令。

扩展资料:
Python 的 for 循环不会像其他语言中的 for 循环那样工作。
假设我们有一个数字列表和一个生成器,生成器会返回这些数字的平方:
>>> numbers = [1, 2, 3, 5, 7]
>>> squares = (n**2 for n in numbers)
可以将生成器对象传递给 tuple 构造器,从而使其变为一个元组:
>>> tuple(squares)
(1, 4, 9, 25, 49)
如果使用相同的生成器对象并将其传给 sum 函数,我们可能会期望得到这些数的和,即 88。>>> sum(squares)
0
但是我们得到了 0。

print函数中的默认参数的作用,使用print(i,end='')就不会换行了,详情参考python官网。

for..in语句是另一个循环语句,它迭代一个对象的序列,例如经历序列中的第一项。在后面的章节,我们将会看到更多关于序列的细节。现在,你需要知道的是一个序列只是一个有序的项目的集合。

例如 (保存为 for.py):

for i in range(1, 5):    print(i)else:    print('for循环结束')

输出:
1
2
3
4
for循环结束

它是如何工作的:
打印一个数字序列。我们使用内置的range函数生成这个数字序列。

我们在这里所做的是提供两个数字,range返回一个从第一个数字到第二个数字的一个数字序列。例如,range(1,5)给出序列[1, 2, 3, 4]。默认情况下,range 步距取为1。如果我们提供第三个数字,range那么它变成了步距。例如range(1,5,2)得到[1,3]。请记住,范围扩展到第二号码,即它不包括第二个数字。

注意,range()生成一个数字序列,当for循环请求下一个项目时,它一次只生成一个数字。如果你想立刻看到完整的数字序列,使用list(range())。list(列表)将在[数据结构章]中解释。

for循环然后遍历这个范围,for i in range(1,5)相当于 for i in [1, 2, 3, 4],这就像把序列中的每一个数(或对象)分配给i,一次一个,然后为每个i值执行该语句块。在本例中,在语句块中我们只是打印它的值。

记住,else部分是可选的。当包括它时,除非遇到[break][#中断)语句,当for循环结束时,它执行一次。

记住,for..in循环可以作用于任何序列。在这里,我们对一个由内建的range函数生成的一个数字列表,但是一般来说,我们可以使用任何种类对象的任何类型的序列!在后面的章节,我们将详细探讨这个想法。

C/C++/Java/C#程序要注意:

  • Python的for循环完全不同于C/c++的for循环。c#程序员会注意到,在Python中for循环类似于c中的foreach循环c#。Java程序员会注意到,同样类似于在Java 1.5中的to for (int i : IntArray)。

  • 在C/c++中,如果你想写for (int i = 0; i < 5; i++),那么在Python中你只要写 for i in range(0,5)。正如您可以看到的,在Python中for循环更简单,更富有表现力且不易出错。




丹巴县17320658316: python中的for in是什么意思 -
秘平万复: 1、python中的for in是一个语句循环固定格式; 2、Python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言; 3、Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、...

丹巴县17320658316: 请教Python 这个类for循环怎么理解? -
秘平万复: 在python语言中,for in 循环本身会自动调用对象的__next__()函数,直到遇到StopIteration这个异常退出循环,每次执行一次__next__()函数,并且将返回值赋给for后面的变量. 程序是这么运行的 for n in Fib():#Fib()是一个类,调用类名相...

丹巴县17320658316: python中for是怎么迭代 -
秘平万复: 迭代嘛,不就是结果带入原式继续计算嘛 例如我for一个函数,得到一个结果,将结果带入函数继续运算:num = 2 while 1: for i in range(num): num = num + i print(num)这个函数就是:num = num + i我设置了while 1无线循环,当然到后面由于num太大导致程序死亡 反正for下的迭代意思就是这样子吧,如果上面设置一下num的范围,超过范围就break就行了

丹巴县17320658316: for - in循环是不是和c#里的foreach一样的意思啊? -
秘平万复: python 中的 for-in 是和c#里的foreach一样的意思,都是遍历一个数据集合

丹巴县17320658316: python中 while, if, for 语句有什么区别吗?比如在进行range函数循环时候. -
秘平万复: while是Python中的循环语句,if属于条件选择语句,而for in属于迭代语句. while 用于重复执行操作,重复的条件不一定是特定的次数,只要条件满足即可: # 打印1-5的平方 x = 1 while x <= 5:print(x ** 2)x = x + 1if 与 循环迭代无关,在默认顺...

丹巴县17320658316: python for in原理 -
秘平万复: 怎么给你说呢?这些牵涉到Iterables和Generator的定义. 先讲Iterables吧, 在Python中很多东西都可以使用for...in...来iterable,比如list, strings, 和files. 这些iterables是方便,你可多次经行处理,因为你在内存中存储的所有值. 下面是个例子: >...

丹巴县17320658316: Python中 for 语句的用法? -
秘平万复: Python 中的 for 语句和 C 或 Pascal 中的略有不同.通常的循环可能会依据一个等差数值步进过程(如 Pascal),或由用户来定义迭代步骤和中止条件(如 C ),Python 的 for 语句依据任意序列(链表或字符串)中的子项,按它们在序列中的顺...

丹巴县17320658316: 求问Python for循环语句 -
秘平万复: for a in range(1,101,2): print(a,end=“ ”)

丹巴县17320658316: python中for循环怎么用 -
秘平万复: 1. for 循环介绍复制代码代码如下:>>> li = ['a', 'b', 'e'] >>> for s in li: (1) ... print s (2) ae >>> print "\n".join(li) (3) ae(1) for 循环的语法同 list 解析相似.li 是一个 list,而 s 将从第一个元素开始依次接收每个元素的值. (2) 像 if 语句或其它任意...

丹巴县17320658316: python中for循环的应用 -
秘平万复: 我们展开生成list3的表达式,变成标准的for循环: list3 = [] for name in list2:for slogan in list1:if slogan[0] == name[0]:list3.append(name + ':' + slogan[2:])这样就可以看得很清楚了. name变量和slogan变量都是字符串,各自遍历list2和list1...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网